/*! TUMap version 2.1.3-7 */
!
function(e, t) {
	if ("object" == typeof exports && "object" == typeof module) module.exports = t();
	else if ("function" == typeof define && define.amd) define([], t);
	else {
		var n = t();
		for (var r in n)("object" == typeof exports ? exports : e)[r] = n[r]
	}
}(window, (function() {
	return function(e) {
		var t = {};

		function n(r) {
			if (t[r]) return t[r].exports;
			var a = t[r] = {
				i: r,
				l: !1,
				exports: {}
			};
			return e[r].call(a.exports, a, a.exports, n), a.l = !0, a.exports
		}
		return n.m = e, n.c = t, n.d = function(e, t, r) {
			n.o(e, t) || Object.defineProperty(e, t, {
				enumerable: !0,
				get: r
			})
		}, n.r = function(e) {
			"undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, {
				value: "Module"
			}), Object.defineProperty(e, "__esModule", {
				value: !0
			})
		}, n.t = function(e, t) {
			if (1 & t && (e = n(e)), 8 & t) return e;
			if (4 & t && "object" == typeof e && e && e.__esModule) return e;
			var r = Object.create(null);
			if (n.r(r), Object.defineProperty(r, "default", {
				enumerable: !0,
				value: e
			}), 2 & t && "string" != typeof e) for (var a in e) n.d(r, a, function(t) {
				return e[t]
			}.bind(null, a));
			return r
		}, n.n = function(e) {
			var t = e && e.__esModule ?
			function() {
				return e.
			default
			} : function() {
				return e
			};
			return n.d(t, "a", t), t
		}, n.o = function(e, t) {
			return Object.prototype.hasOwnProperty.call(e, t)
		}, n.p = "", n(n.s = 33)
	}([function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		}), t.divideDefaultValue = t.tumapStyle = void 0;
		var r = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ?
		function(e) {
			return typeof e
		} : function(e) {
			return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
		};
		t.addGobalClass = o, t.createLoading = function() {
			o("\n.-tu-loading-spinner {\n    flex:none;\n    width: 150px;\n    height:30px;\n    text-align: center;\n}\n\n.-tu-loading-spinner > div {\n    width: 30px;\n    height: 30px;\n    background-color: #fff;\n\n    border-radius: 100%;\n    display: inline-block;\n    -webkit-animation: -tu-loading-bouncedelay 1.4s infinite ease-in-out;\n    animation: -tu-loading-bouncedelay 1.4s infinite ease-in-out;\n    -webkit-animation-fill-mode: both;\n    animation-fill-mode: both;\n}\n\n.-tu-loading-spinner .-tu-loading-bounce1 {\n    -webkit-animation-delay: -0.32s;\n    animation-delay: -0.32s;\n}\n\n.-tu-loading-spinner .-tu-loading-bounce2 {\n    -webkit-animation-delay: -0.16s;\n    animation-delay: -0.16s;\n}\n\n@-webkit-keyframes -tu-loading-bouncedelay {\n    0%, 80%, 100% { -webkit-transform: scale(0.0) }\n    40% { -webkit-transform: scale(1.0) }\n}\n\n@keyframes -tu-loading-bouncedelay {\n    0%, 80%, 100% {\n        transform: scale(0.0);\n        -webkit-transform: scale(0.0);\n    } 40% {\n          transform: scale(1.0);\n          -webkit-transform: scale(1.0);\n      }\n}\n\n.-tu-loading-mask {\n    position: absolute;\n    width:100%;\n    height:100%;\n    left:0;\n    top:0;\n    right:0;\n    bottom:0;\n    pointer-events: none;\n    overflow: hidden;\n    display: flex;\n    display: -webkit-box;\n    display: -moz-box;\n    display: -ms-flexbox;\n    display: -webkit-flex;\n    flex-direction: row;\n    -ms-flex-direction: row;\n    justify-content: center;\n    -ms-flex-pack: center;\n    align-items: center;\n    -ms-flex-align: center;\n}", "-zc-zc-loading");
			var e = document.createElement("div");
			return e.setAttribute("class", "-tu-loading-mask"), e.innerHTML = '<div class="-tu-loading-spinner">\n                                    <div class="-tu-loading-bounce1"></div>\n                                    <div class="-tu-loading-bounce2"></div>\n                                    <div class="-tu-loading-bounce3"></div>\n                            </div>', e
		}, t.joinNullObject = function(e, t) {
			if (!e) return t;
			for (var n in t) e.hasOwnProperty(n) && null !== e[n] && "" !== e[n] || (e[n] = t[n]);
			return e
		}, t.filterNull = function(e, t) {
			return null == e ? t : e
		}, t.isNull = function(e) {
			return "number" != typeof e && !e
		}, t.isNumber = function(e) {
			var t = parseFloat(e);
			return !isNaN(t)
		}, t.getWeatherNum = function(e) {
			return "rain" === e ? 1 : "snow" === e ? 2 : "cloud" === e ? 3 : 0
		}, t.getWeatherStr = function(e) {
			return 1 === e ? "rain" : 2 === e ? "snow" : 3 === e ? "cloud" : "sun"
		}, t.getPointsLimitXY = function(e) {
			var t = NaN,
				n = NaN,
				r = NaN,
				a = NaN,
				o = !0,
				i = !1,
				u = void 0;
			try {
				for (var l, s = e[Symbol.iterator](); !(o = (l = s.next()).done); o = !0) {
					var c = l.value;
					(isNaN(r) || c.x > r) && (r = c.x), (isNaN(t) || c.x < t) && (t = c.x), (isNaN(a) || c.y > a) && (a = c.y), (isNaN(n) || c.y < n) && (n = c.y)
				}
			} catch (e) {
				i = !0, u = e
			} finally {
				try {
					!o && s.
					return &&s.
					return ()
				} finally {
					if (i) throw u
				}
			}
			return {
				miX: t,
				maX: r,
				miY: n,
				maY: a,
				center: {
					x: t + (r - t) / 2,
					y: n + (a - n) / 2
				}
			}
		}, t.filterUex = function(e) {
			if (e.hasOwnProperty("location") && !e.hasOwnProperty("ue4x") && !e.hasOwnProperty("x")) return e.ue4x = e.location.x, e.ue4y = e.location.y, e.ue4z = e.location.z, e;
			e.hasOwnProperty("x") && !e.hasOwnProperty("ue4x") && (e.ue4x = e.x, delete e.x);
			e.hasOwnProperty("y") && !e.hasOwnProperty("ue4y") && (e.ue4y = e.y, delete e.y);
			e.hasOwnProperty("z") && !e.hasOwnProperty("ue4z") && (e.ue4z = e.z, delete e.z);
			return e
		}, t.getSelectItem = function(e, t) {
			var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : "id";
			if (!e || !Array.isArray(e)) return null;
			var r = !0,
				a = !1,
				o = void 0;
			try {
				for (var i, u = e[Symbol.iterator](); !(r = (i = u.next()).done); r = !0) {
					var l = i.value;
					if (l && l.hasOwnProperty(n) && l[n] === t) return l
				}
			} catch (e) {
				a = !0, o = e
			} finally {
				try {
					!r && u.
					return &&u.
					return ()
				} finally {
					if (a) throw o
				}
			}
			return null
		}, t.getSelectItemIndex = function(e, t) {
			var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : "id";
			if (!e || !Array.isArray(e)) return -1;
			for (var r = 0; r < e.length; r++) {
				var a = e[r];
				if (a && a.hasOwnProperty(n) && a[n] === t) return r
			}
			return -1
		}, t.isVectorXYObject = function(e) {
			var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "",
				n = !(arguments.length > 2 && void 0 !== arguments[2]) || arguments[2];
			if ("object" === (void 0 === e ? "undefined" : r(e))) {
				if (e && e.hasOwnProperty("x") && e.hasOwnProperty("y")) return !0;
				if (n) throw new Error("参数错误:" + t + " x y 属性不存在")
			}
			return !1
		}, t.thorwError = function(e) {
			var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "TUMapError";
			throw new Error(t + ":" + e)
		}, t.isVectorLagObject = function(e) {
			var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "",
				n = !(arguments.length > 2 && void 0 !== arguments[2]) || arguments[2];
			if ("object" === (void 0 === e ? "undefined" : r(e))) {
				if (e && e.hasOwnProperty("x") && e.hasOwnProperty("y")) return !0;
				if (n) throw new Error("参数错误:" + t + ",x y 属性不存在")
			}
			return !1
		}, t.transMethods = function(e, t) {
			t.forEach((function(t) {
				var n = t.charAt(0).toLocaleLowerCase() + t.substring(1, t.length);
				e[t] = e[n]
			}))
		}, t.getDefDivideColors = function(e) {
			if (!e || 0 === e.length) return [];
			for (var t = [], n = 0; n < e.length; n++) t.push((0, a.getUe4Color)(i[n % devideColors.length]));
			return t.push((0, a.getUe4Color)(i[e.length % i.length])), t
		}, t.isTrans = function(e, t) {
			return !!(!0 === t || e && "WGS84" === e.vectorType)
		}, t.getNumber = function(e) {
			var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 0;
			return e = parseFloat(e), isNaN(e) ? t : e
		}, t.getInteger = function(e) {
			var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 0;
			return e = parseInt(e), isNaN(e) ? t : e
		}, t.limitNum = function(e, t, n) {
			return e < t ? t : e > n ? n : e
		}, t.getRangeIn = function(e, t) {
			var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : "";
			return -1 === t.indexOf(e + "") ? n : e
		}, t.getBoolean = function(e) {
			var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1];
			return void 0 === e || "" === e || null === e ? t : "boolean" == typeof e ? e : "true" === (e = (e + "").toLocaleLowerCase()) || "t" === e || "1" === e
		};
		var a = n(7);
		t.tumapStyle = " .-tu-container{\n    position:absolute;\n    left:0;\n    right:0;\n    top:0;\n    bottom:0;\n    overflow: hidden;\n    background: #000;\n}\n\n.-tu-container-iview {\n    position: absolute;\n    left: 0;\n    right: 0;\n    top: 0;\n    bottom: 0;\n    width: 100%;\n    height: 100%;\n    background: transparent;\n    border: 0;\n    frameborder: 0;\n}";

		function o(e) {
			var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "_zc_zc_tumap",
				n = document.getElementById(t);
			if (!n) {
				var r = document.createElement("style"),
					a = document.body || document.getElementsByTagName("body")[0];
				if (r.type = "text/css", r.id = t, r.styleSheet) try {
					r.styleSheet.cssText = e
				} catch (e) {
					console.log("================================class non")
				} else {
					var o = document.createTextNode(e);
					r.appendChild(o)
				}
				a.appendChild(r)
			}
		}
		var i = ["#ff0000", "#00ff00", "#0000ff", "#f0ff0f", "#ff00ff"];
		t.divideDefaultValue = [100, 200]
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r = function() {
				function e(e, t) {
					for (var n = 0; n < t.length; n++) {
						var r = t[n];
						r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
					}
				}
				return function(t, n, r) {
					return n && e(t.prototype, n), r && e(t, r), t
				}
			}(),
			a = n(0);

		function o(e, t) {
			if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
		}
		var i = function() {
				function e(t) {
					var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null,
						r = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : "";
					o(this, e), this.owner = t, this.options = n, this.namespace = r, this.release = [], this.releaseGIS = []
				}
				return r(e, [{
					key: "transVectorNew",
					value: function(e) {
						return this.owner.transform.transformWGS84ToLocalObj(e)
					}
				}, {
					key: "transVector",
					value: function(e) {
						return this.owner.transform.transformWGS84ToLocalObj2(e)
					}
				}, {
					key: "transPosition",
					value: function(e, t, n) {
						return n = (0, a.isTrans)(e, n), null === t ? n ? this.transVector(e) : e : n ? this.transVector(e[t]) : e[t]
					}
				}, {
					key: "transPositionArr",
					value: function(e, t, n) {
						return (n = (0, a.isTrans)(e, n)) ? this.transVector(e[t]) : e[t]
					}
				}, {
					key: "transArrayNum",
					value: function(e) {
						if (!e) return arry;
						var t = !0,
							n = !1,
							r = void 0;
						try {
							for (var a, o = e[Symbol.iterator](); !(t = (a = o.next()).done); t = !0) {
								var i = a.value;
								this.transVector(i)
							}
						} catch (e) {
							n = !0, r = e
						} finally {
							try {
								!t && o.
								return &&o.
								return ()
							} finally {
								if (n) throw r
							}
						}
						return e
					}
				}, {
					key: "transArrayNumNew",
					value: function(e) {
						var t = this;
						return e ? e.map((function(e) {
							return t.transVectorNew(e)
						})) : e
					}
				}, {
					key: "getVector3",
					value: function(e, t, n) {
						var r = arguments.length > 3 && void 0 !== arguments[3] && arguments[3];
						return r ? this.transVectorNum(e, t, n) : {
							x: e,
							y: t,
							z: n
						}
					}
				}, {
					key: "transVectorNum",
					value: function(e, t, n) {
						return this.owner.transform.transformWGS84ToLocalNum(e, t, n)
					}
				}, {
					key: "removeCallBack",
					value: function(e) {
						this.owner && this.owner.message.clearItemReback(e)
					}
				}, {
					key: "send",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null;
						this.owner && this.owner._postMessage(e, t)
					}
				}, {
					key: "sendMessage",
					value: function(e, t) {
						var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : null,
							r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : null,
							a = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : null,
							o = arguments.length > 5 && void 0 !== arguments[5] ? arguments[5] : null,
							i = {
								namespace: e,
								type: t
							};
						null !== n && (i.param = n), null !== r && (i.eventName = r), null !== a && (i.effectName = a), this.send(i, o)
					}
				}, {
					key: "sendMessage2",
					value: function(e, t) {
						var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : null,
							r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : null,
							a = {
								namespace: e,
								type: t
							};
						null !== n && (a.param = n), this.send(a, r)
					}
				}, {
					key: "sendData",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null,
							n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : null,
							r = {
								namespace: this.namespace,
								type: e
							};
						null !== n && (r.eventName = n), null !== t && (r.param = t), this.send(r)
					}
				}, {
					key: "createMapObject",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "",
							n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : null,
							r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : null,
							a = this,
							o = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : null,
							i = arguments.length > 5 && void 0 !== arguments[5] ? arguments[5] : null,
							u = {
								id: ""
							};
						return e && Object.assign(u, e), n && (u.removeFromMap = function() {
							a.sendMessage(t, n, u.id)
						}), r && (u.show = function(e) {
							e ? a.sendMessage(t, r, u.id) : a.sendMessage(t, o, u.id)
						}), i && (u.deleteObject = function() {
							a.sendMessage(t, i, u.id)
						}), u
					}
				}, {
					key: "createThisMapObject",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null,
							n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : null,
							r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : null,
							a = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : null;
						return this.createMapObject(e, this.namespace, t, n, r, a)
					}
				}, {
					key: "createThisMapObject2",
					value: function(e, t) {
						var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : null;
						return this.createMapObject(e, this.namespace, "Remove" + t, "Show" + t, "Show" + t, n)
					}
				}, {
					key: "destroy",
					value: function() {
						this.owner = null, this.options = null
					}
				}]), e
			}();
		t.
	default = i, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		}), t.
	default = function(e) {
			return null != e
		}, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r = l(n(8)),
			a = l(n(4)),
			o = l(n(2)),
			i = l(n(9)),
			u = l(n(5));
		l(n(3));

		function l(e) {
			return e && e.__esModule ? e : {
			default:
				e
			}
		}
		function s(e, t, n) {
			this.x = (0, a.
		default)(e, 0), this.y = (0, a.
		default)(t, 0), this.z = (0, a.
		default)(n, 0)
		}
		s.packedLength = 3, s.fromSpherical = function(e, t) {
			r.
		default.typeOf.object("spherical", e), (0, o.
		default)(t) || (t = new s);
			var n = e.clock,
				i = e.cone,
				u = (0, a.
			default)(e.magnitude, 1),
				l = u * Math.sin(i);
			return t.x = l * Math.cos(n), t.y = l * Math.sin(n), t.z = u * Math.cos(i), t
		}, s.fromElements = function(e, t, n, r) {
			return (0, o.
		default)(r) ? (r.x = e, r.y = t, r.z = n, r) : new s(e, t, n)
		}, s.clone = function(e, t) {
			if ((0, o.
		default)(e)) return (0, o.
		default)(t) ? (t.x = e.x, t.y = e.y, t.z = e.z, t) : new s(e.x, e.y, e.z)
		}, s.fromCartesian4 = s.clone, s.packedLength = 3, s.pack = function(e, t, n) {
			return r.
		default.defined("array", t), n = (0, a.
		default)(n, 0), t[n++] = e.x, t[n++] = e.y, t[n] = e.z, t
		}, s.unpack = function(e, t, n) {
			return r.
		default.defined("array", e), t = (0, a.
		default)(t, 0), (0, o.
		default)(n) || (n = new s), n.x = e[t++], n.y = e[t++], n.z = e[t], n
		}, s.packArray = function(e, t) {
			r.
		default.defined("array", e);
			var n = e.length,
				a = 3 * n;
			if ((0, o.
		default)(t)) {
				if (!Array.isArray(t) && t.length !== a) throw new i.
			default ("If result is a typed array, it must have exactly array.length * 3 elements");
				t.length !== a && (t.length = a)
			} else t = new Array(a);
			for (var u = 0; u < n; ++u) s.pack(e[u], t, 3 * u);
			return t
		}, s.unpackArray = function(e, t) {
			if (r.
		default.defined("array", e), r.
		default.typeOf.number.greaterThanOrEquals("array.length", e.length, 3), e.length % 3 != 0) throw new i.
		default ("array length must be a multiple of 3.");
			var n = e.length;
			(0, o.
		default)(t) ? t.length = n / 3:
			t = new Array(n / 3);
			for (var a = 0; a < n; a += 3) {
				var u = a / 3;
				t[u] = s.unpack(e, a, t[u])
			}
			return t
		}, s.fromArray = s.unpack, s.maximumComponent = function(e) {
			return r.
		default.typeOf.object("cartesian", e), Math.max(e.x, e.y, e.z)
		}, s.minimumComponent = function(e) {
			return r.
		default.typeOf.object("cartesian", e), Math.min(e.x, e.y, e.z)
		}, s.minimumByComponent = function(e, t, n) {
			return r.
		default.typeOf.object("first", e), r.
		default.typeOf.object("second", t), r.
		default.typeOf.object("result", n), n.x = Math.min(e.x, t.x), n.y = Math.min(e.y, t.y), n.z = Math.min(e.z, t.z), n
		}, s.maximumByComponent = function(e, t, n) {
			return r.
		default.typeOf.object("first", e), r.
		default.typeOf.object("second", t), r.
		default.typeOf.object("result", n), n.x = Math.max(e.x, t.x), n.y = Math.max(e.y, t.y), n.z = Math.max(e.z, t.z), n
		}, s.magnitudeSquared = function(e) {
			return r.
		default.typeOf.object("cartesian", e), e.x * e.x + e.y * e.y + e.z * e.z
		}, s.magnitude = function(e) {
			return Math.sqrt(s.magnitudeSquared(e))
		};
		var c = new s;
		s.distance = function(e, t) {
			return r.
		default.typeOf.object("left", e), r.
		default.typeOf.object("right", t), s.subtract(e, t, c), s.magnitude(c)
		}, s.distanceSquared = function(e, t) {
			return r.
		default.typeOf.object("left", e), r.
		default.typeOf.object("right", t), s.subtract(e, t, c), s.magnitudeSquared(c)
		}, s.normalize = function(e, t) {
			r.
		default.typeOf.object("cartesian", e), r.
		default.typeOf.object("result", t);
			var n = s.magnitude(e);
			if (t.x = e.x / n, t.y = e.y / n, t.z = e.z / n, isNaN(t.x) || isNaN(t.y) || isNaN(t.z)) throw new i.
		default ("normalized result is not a number");
			return t
		}, s.dot = function(e, t) {
			return r.
		default.typeOf.object("left", e), r.
		default.typeOf.object("right", t), e.x * t.x + e.y * t.y + e.z * t.z
		}, s.multiplyComponents = function(e, t, n) {
			return r.
		default.typeOf.object("left", e), r.
		default.typeOf.object("right", t), r.
		default.typeOf.object("result", n), n.x = e.x * t.x, n.y = e.y * t.y, n.z = e.z * t.z, n
		}, s.divideComponents = function(e, t, n) {
			return r.
		default.typeOf.object("left", e), r.
		default.typeOf.object("right", t), r.
		default.typeOf.object("result", n), n.x = e.x / t.x, n.y = e.y / t.y, n.z = e.z / t.z, n
		}, s.add = function(e, t, n) {
			return r.
		default.typeOf.object("left", e), r.
		default.typeOf.object("right", t), r.
		default.typeOf.object("result", n), n.x = e.x + t.x, n.y = e.y + t.y, n.z = e.z + t.z, n
		}, s.subtract = function(e, t, n) {
			return r.
		default.typeOf.object("left", e), r.
		default.typeOf.object("right", t), r.
		default.typeOf.object("result", n), n.x = e.x - t.x, n.y = e.y - t.y, n.z = e.z - t.z, n
		}, s.multiplyByScalar = function(e, t, n) {
			return r.
		default.typeOf.object("cartesian", e), r.
		default.typeOf.number("scalar", t), r.
		default.typeOf.object("result", n), n.x = e.x * t, n.y = e.y * t, n.z = e.z * t, n
		}, s.divideByScalar = function(e, t, n) {
			return r.
		default.typeOf.object("cartesian", e), r.
		default.typeOf.number("scalar", t), r.
		default.typeOf.object("result", n), n.x = e.x / t, n.y = e.y / t, n.z = e.z / t, n
		}, s.negate = function(e, t) {
			return r.
		default.typeOf.object("cartesian", e), r.
		default.typeOf.object("result", t), t.x = -e.x, t.y = -e.y, t.z = -e.z, t
		}, s.abs = function(e, t) {
			return r.
		default.typeOf.object("cartesian", e), r.
		default.typeOf.object("result", t), t.x = Math.abs(e.x), t.y = Math.abs(e.y), t.z = Math.abs(e.z), t
		};
		var f = new s;
		s.lerp = function(e, t, n, a) {
			return r.
		default.typeOf.object("start", e), r.
		default.typeOf.object("end", t), r.
		default.typeOf.number("t", n), r.
		default.typeOf.object("result", a), s.multiplyByScalar(t, n, f), a = s.multiplyByScalar(e, 1 - n, a), s.add(f, a, a)
		};
		var d = new s,
			h = new s;
		s.angleBetween = function(e, t) {
			r.
		default.typeOf.object("left", e), r.
		default.typeOf.object("right", t), s.normalize(e, d), s.normalize(t, h);
			var n = s.dot(d, h),
				a = s.magnitude(s.cross(d, h, d));
			return Math.atan2(a, n)
		};
		var y = new s;
		s.mostOrthogonalAxis = function(e, t) {
			r.
		default.typeOf.object("cartesian", e), r.
		default.typeOf.object("result", t);
			var n = s.normalize(e, y);
			return s.abs(n, n), t = n.x <= n.y ? n.x <= n.z ? s.clone(s.UNIT_X, t):
			s.clone(s.UNIT_Z, t) : n.y <= n.z ? s.clone(s.UNIT_Y, t) : s.clone(s.UNIT_Z, t)
		}, s.projectVector = function(e, t, n) {
			r.
		default.defined("a", e), r.
		default.defined("b", t), r.
		default.defined("result", n);
			var a = s.dot(e, t) / s.dot(t, t);
			return s.multiplyByScalar(t, a, n)
		}, s.equals = function(e, t) {
			return e === t || (0, o.
		default)(e) && (0, o.
		default)(t) && e.x === t.x && e.y === t.y && e.z === t.z
		}, s.equalsArray = function(e, t, n) {
			return e.x === t[n] && e.y === t[n + 1] && e.z === t[n + 2]
		}, s.equalsEpsilon = function(e, t, n, r) {
			return e === t || (0, o.
		default)(e) && (0, o.
		default)(t) && u.
		default.equalsEpsilon(e.x, t.x, n, r) && u.
		default.equalsEpsilon(e.y, t.y, n, r) && u.
		default.equalsEpsilon(e.z, t.z, n, r)
		}, s.cross = function(e, t, n) {
			r.
		default.typeOf.object("left", e), r.
		default.typeOf.object("right", t), r.
		default.typeOf.object("result", n);
			var a = e.x,
				o = e.y,
				i = e.z,
				u = t.x,
				l = t.y,
				s = t.z,
				c = o * s - i * l,
				f = i * u - a * s,
				d = a * l - o * u;
			return n.x = c, n.y = f, n.z = d, n
		}, s.midpoint = function(e, t, n) {
			return r.
		default.typeOf.object("left", e), r.
		default.typeOf.object("right", t), r.
		default.typeOf.object("result", n), n.x = .5 * (e.x + t.x), n.y = .5 * (e.y + t.y), n.z = .5 * (e.z + t.z), n
		}, s.fromDegrees = function(e, t, n) {
			var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : null,
				a = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : null;
			return e = u.
		default.toRadians(e), t = u.
		default.toRadians(t), s.fromRadians(e, t, n, r, a)
		};
		var p = new s,
			v = new s,
			m = new s(40680631590769, 40680631590769, 40408299984661.445);
		s.fromRadians = function(e, t, n) {
			var i = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : null,
				u = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : null;
			r.
		default.typeOf.number("longitude", e), r.
		default.typeOf.number("latitude", t), n = (0, a.
		default)(n, 0);
			var l = (0, o.
		default)(i) ? i.radiiSquared:
			m,
				c = Math.cos(t);
			p.x = c * Math.cos(e), p.y = c * Math.sin(e), p.z = Math.sin(t), p = s.normalize(p, p), s.multiplyComponents(l, p, v);
			var f = Math.sqrt(s.dot(p, v));
			return v = s.divideByScalar(v, f, v), p = s.multiplyByScalar(p, n, p), (0, o.
		default)(u) || (u = new s), s.add(v, p, u)
		}, s.fromDegreesArray = function(e, t, n) {
			if (r.
		default.defined("coordinates", e), e.length < 2 || e.length % 2 != 0) throw new i.
		default ("the number of coordinates must be a multiple of 2 and at least 2");
			var a = e.length;
			(0, o.
		default)(n) ? n.length = a / 2:
			n = new Array(a / 2);
			for (var u = 0; u < a; u += 2) {
				var l = e[u],
					c = e[u + 1],
					f = u / 2;
				n[f] = s.fromDegrees(l, c, 0, t, n[f])
			}
			return n
		}, s.fromRadiansArray = function(e, t, n) {
			if (r.
		default.defined("coordinates", e), e.length < 2 || e.length % 2 != 0) throw new i.
		default ("the number of coordinates must be a multiple of 2 and at least 2");
			var a = e.length;
			(0, o.
		default)(n) ? n.length = a / 2:
			n = new Array(a / 2);
			for (var u = 0; u < a; u += 2) {
				var l = e[u],
					c = e[u + 1],
					f = u / 2;
				n[f] = s.fromRadians(l, c, 0, t, n[f])
			}
			return n
		}, s.fromDegreesArrayHeights = function(e, t, n) {
			if (r.
		default.defined("coordinates", e), e.length < 3 || e.length % 3 != 0) throw new i.
		default ("the number of coordinates must be a multiple of 3 and at least 3");
			var a = e.length;
			(0, o.
		default)(n) ? n.length = a / 3:
			n = new Array(a / 3);
			for (var u = 0; u < a; u += 3) {
				var l = e[u],
					c = e[u + 1],
					f = e[u + 2],
					d = u / 3;
				n[d] = s.fromDegrees(l, c, f, t, n[d])
			}
			return n
		}, s.fromRadiansArrayHeights = function(e, t, n) {
			if (r.
		default.defined("coordinates", e), e.length < 3 || e.length % 3 != 0) throw new i.
		default ("the number of coordinates must be a multiple of 3 and at least 3");
			var a = e.length;
			(0, o.
		default)(n) ? n.length = a / 3:
			n = new Array(a / 3);
			for (var u = 0; u < a; u += 3) {
				var l = e[u],
					c = e[u + 1],
					f = e[u + 2],
					d = u / 3;
				n[d] = s.fromRadians(l, c, f, t, n[d])
			}
			return n
		}, s.ZERO = Object.freeze(new s(0, 0, 0)), s.UNIT_X = Object.freeze(new s(1, 0, 0)), s.UNIT_Y = Object.freeze(new s(0, 1, 0)), s.UNIT_Z = Object.freeze(new s(0, 0, 1)), s.prototype.clone = function(e) {
			return s.clone(this, e)
		}, s.prototype.equals = function(e) {
			return s.equals(this, e)
		}, s.prototype.equalsEpsilon = function(e, t, n) {
			return s.equalsEpsilon(this, e, t, n)
		}, s.prototype.toString = function() {
			return "(" + this.x + ", " + this.y + ", " + this.z + ")"
		}, t.
	default = s, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";

		function r(e, t) {
			return null != e ? e : t
		}
		Object.defineProperty(t, "__esModule", {
			value: !0
		}), r.EMPTY_OBJECT = Object.freeze({}), t.
	default = r, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r = i(n(8)),
			a = i(n(4)),
			o = i(n(2));

		function i(e) {
			return e && e.__esModule ? e : {
			default:
				e
			}
		}
		var u = {
			EPSILON1: .1,
			EPSILON2: .01,
			EPSILON3: .001,
			EPSILON4: 1e-4,
			EPSILON5: 1e-5,
			EPSILON6: 1e-6,
			EPSILON7: 1e-7,
			EPSILON8: 1e-8,
			EPSILON9: 1e-9,
			EPSILON10: 1e-10,
			EPSILON11: 1e-11,
			EPSILON12: 1e-12,
			EPSILON13: 1e-13,
			EPSILON14: 1e-14,
			EPSILON15: 1e-15,
			EPSILON16: 1e-16,
			EPSILON17: 1e-17,
			EPSILON18: 1e-18,
			EPSILON19: 1e-19,
			EPSILON20: 1e-20,
			EPSILON21: 1e-21,
			GRAVITATIONALPARAMETER: 3986004418e5,
			SOLAR_RADIUS: 6955e5,
			LUNAR_RADIUS: 1737400,
			SIXTY_FOUR_KILOBYTES: 65536,
			FOUR_GIGABYTES: 4294967296
		};
		u.sign = (0, a.
	default)(Math.sign, (function(e) {
			return 0 === (e = +e) || e != e ? e : e > 0 ? 1 : -1
		})), u.signNotZero = function(e) {
			return e < 0 ? -1 : 1
		}, u.toSNorm = function(e, t) {
			return t = (0, a.
		default)(t, 255), Math.round((.5 * u.clamp(e, -1, 1) + .5) * t)
		}, u.fromSNorm = function(e, t) {
			return t = (0, a.
		default)(t, 255), u.clamp(e, 0, t) / t * 2 - 1
		}, u.normalize = function(e, t, n) {
			return 0 === (n = Math.max(n - t, 0)) ? 0 : u.clamp((e - t) / n, 0, 1)
		}, u.sinh = (0, a.
	default)(Math.sinh, (function(e) {
			return (Math.exp(e) - Math.exp(-e)) / 2
		})), u.cosh = (0, a.
	default)(Math.cosh, (function(e) {
			return (Math.exp(e) + Math.exp(-e)) / 2
		})), u.lerp = function(e, t, n) {
			return (1 - n) * e + n * t
		}, u.PI = Math.PI, u.ONE_OVER_PI = 1 / Math.PI, u.PI_OVER_TWO = Math.PI / 2, u.PI_OVER_THREE = Math.PI / 3, u.PI_OVER_FOUR = Math.PI / 4, u.PI_OVER_SIX = Math.PI / 6, u.THREE_PI_OVER_TWO = 3 * Math.PI / 2, u.TWO_PI = 2 * Math.PI, u.ONE_OVER_TWO_PI = 1 / (2 * Math.PI), u.RADIANS_PER_DEGREE = Math.PI / 180, u.DEGREES_PER_RADIAN = 180 / Math.PI, u.RADIANS_PER_ARCSECOND = u.RADIANS_PER_DEGREE / 3600, u.toRadians = function(e) {
			if (!(0, o.
		default)(e)) throw new Error("degrees is required.");
			return e * u.RADIANS_PER_DEGREE
		}, u.toDegrees = function(e) {
			if (!(0, o.
		default)(e)) throw new Error("radians is required.");
			return e * u.DEGREES_PER_RADIAN
		}, u.convertLongitudeRange = function(e) {
			if (!(0, o.
		default)(e)) throw new Error("angle is required.");
			var t = u.TWO_PI,
				n = e - Math.floor(e / t) * t;
			return n < -Math.PI ? n + t : n >= Math.PI ? n - t : n
		}, u.clampToLatitudeRange = function(e) {
			if (!(0, o.
		default)(e)) throw new Error("angle is required.");
			return u.clamp(e, -1 * u.PI_OVER_TWO, u.PI_OVER_TWO)
		}, u.negativePiToPi = function(e) {
			if (!(0, o.
		default)(e)) throw new Error("angle is required.");
			return u.zeroToTwoPi(e + u.PI) - u.PI
		}, u.zeroToTwoPi = function(e) {
			if (!(0, o.
		default)(e)) throw new Error("angle is required.");
			var t = u.mod(e, u.TWO_PI);
			return Math.abs(t) < u.EPSILON14 && Math.abs(e) > u.EPSILON14 ? u.TWO_PI : t
		}, u.mod = function(e, t) {
			if (!(0, o.
		default)(e)) throw new Error("m is required.");
			if (!(0, o.
		default)(t)) throw new Error("n is required.");
			return (e % t + t) % t
		}, u.equalsEpsilon = function(e, t, n, r) {
			if (!(0, o.
		default)(e)) throw new Error("left is required.");
			if (!(0, o.
		default)(t)) throw new Error("right is required.");
			if (!(0, o.
		default)(n)) throw new Error("relativeEpsilon is required.");
			r = (0, a.
		default)(r, n);
			var i = Math.abs(e - t);
			return i <= r || i <= n * Math.max(Math.abs(e), Math.abs(t))
		}, u.lessThan = function(e, t, n) {
			if (!(0, o.
		default)(e)) throw new Error("first is required.");
			if (!(0, o.
		default)(t)) throw new Error("second is required.");
			if (!(0, o.
		default)(n)) throw new Error("relativeEpsilon is required.");
			return e - t < -n
		}, u.lessThanOrEquals = function(e, t, n) {
			if (!(0, o.
		default)(e)) throw new Error("first is required.");
			if (!(0, o.
		default)(t)) throw new Error("second is required.");
			if (!(0, o.
		default)(n)) throw new Error("relativeEpsilon is required.");
			return e - t < n
		}, u.greaterThan = function(e, t, n) {
			if (!(0, o.
		default)(e)) throw new Error("first is required.");
			if (!(0, o.
		default)(t)) throw new Error("second is required.");
			if (!(0, o.
		default)(n)) throw new Error("relativeEpsilon is required.");
			return e - t > n
		}, u.greaterThanOrEquals = function(e, t, n) {
			if (!(0, o.
		default)(e)) throw new Error("first is required.");
			if (!(0, o.
		default)(t)) throw new Error("second is required.");
			if (!(0, o.
		default)(n)) throw new Error("relativeEpsilon is required.");
			return e - t > -n
		};
		var l = [1];
		u.factorial = function(e) {
			if ("number" != typeof e || e < 0) throw new Error("A number greater than or equal to 0 is required.");
			var t = l.length;
			if (e >= t) for (var n = l[t - 1], r = t; r <= e; r++) {
				var a = n * r;
				l.push(a), n = a
			}
			return l[e]
		}, u.incrementWrap = function(e, t, n) {
			if (n = (0, a.
		default)(n, 0), !(0, o.
		default)(e)) throw new Error("n is required.");
			if (t <= n) throw new Error("maximumValue must be greater than minimumValue.");
			return ++e > t && (e = n), e
		}, u.isPowerOfTwo = function(e) {
			if ("number" != typeof e || e < 0) throw new Error("A number greater than or equal to 0 is required.");
			return 0 !== e && 0 == (e & e - 1)
		}, u.nextPowerOfTwo = function(e) {
			if ("number" != typeof e || e < 0) throw new Error("A number greater than or equal to 0 is required.");
			return --e, e |= e >> 1, e |= e >> 2, e |= e >> 4, e |= e >> 8, e |= e >> 16, ++e
		}, u.clamp = function(e, t, n) {
			if (!(0, o.
		default)(e)) throw new Error("value is required");
			if (!(0, o.
		default)(t)) throw new Error("min is required.");
			if (!(0, o.
		default)(n)) throw new Error("max is required.");
			return e < t ? t : e > n ? n : e
		}, u.acosClamped = function(e) {
			if (!(0, o.
		default)(e)) throw new Error("value is required.");
			return Math.acos(u.clamp(e, -1, 1))
		}, u.asinClamped = function(e) {
			if (!(0, o.
		default)(e)) throw new Error("value is required.");
			return Math.asin(u.clamp(e, -1, 1))
		}, u.chordLength = function(e, t) {
			if (!(0, o.
		default)(e)) throw new Error("angle is required.");
			if (!(0, o.
		default)(t)) throw new Error("radius is required.");
			return 2 * t * Math.sin(.5 * e)
		}, u.logBase = function(e, t) {
			if (!(0, o.
		default)(e)) throw new Error("number is required.");
			if (!(0, o.
		default)(t)) throw new Error("base is required.");
			return Math.log(e) / Math.log(t)
		}, u.cbrt = (0, a.
	default)(Math.cbrt, (function(e) {
			var t = Math.pow(Math.abs(e), 1 / 3);
			return e < 0 ? -t : t
		})), u.log2 = (0, a.
	default)(Math.log2, (function(e) {
			return Math.log(e) * Math.LOG2E
		})), u.fog = function(e, t) {
			var n = e * t;
			return 1 - Math.exp(-n * n)
		}, u.fastApproximateAtan = function(e) {
			return r.
		default.typeOf.number("x", e), e * (-.1784 * Math.abs(e) - .0663 * e * e + 1.0301)
		}, u.fastApproximateAtan2 = function(e, t) {
			var n, a;
			r.
		default.typeOf.number("x", e), r.
		default.typeOf.number("y", t);
			var o = Math.abs(e);
			n = Math.abs(t), a = Math.max(o, n);
			var i = (n = Math.min(o, n)) / a;
			if (isNaN(i)) throw new Error("either x or y must be nonzero");
			return o = u.fastApproximateAtan(i), o = Math.abs(t) > Math.abs(e) ? u.PI_OVER_TWO - o:
			o, o = e < 0 ? u.PI - o : o, o = t < 0 ? -o : o
		}, t.
	default = u, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r = function() {
				function e(e, t) {
					for (var n = 0; n < t.length; n++) {
						var r = t[n];
						r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
					}
				}
				return function(t, n, r) {
					return n && e(t.prototype, n), r && e(t, r), t
				}
			}();
		var a = function() {
				function e(t) {
					!
					function(e, t) {
						if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
					}(this, e)
				}
				return r(e, [{
					key: "tranceError",
					value: function(e) {
						console.log("TUMap Error:" + e)
					}
				}], [{
					key: "createOID",
					value: function(t) {
						return "", e.objRandom || e.__setRandomNum(0), e.objRandom.st += 1, e.objRandom.st >= 999999999999998 && e.__setRandomNum(0), "" + e.objRandom.start + e.objRandom.start1 + e.objRandom.st
					}
				}, {
					key: "__setRandomNum",
					value: function(t) {
						e.objRandom || (e.objRandom = {}), e.objRandom.st = t, e.objRandom.start = e.createUUid(), e.objRandom.start1 = e.createRandom(8, 99999999999)
					}
				}, {
					key: "createUUid",
					value: function(t, n, r) {
						e.NUM_CHART || (e.NUM_CHART = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""));
						var a = e.NUM_CHART,
							o = [],
							i = void 0;
						if (r = r || a.length, t || (t = "UID"), t = t.toLocaleUpperCase(), n) for (i = 0; i < n; i++) o[i] = a[0 | Math.random() * r];
						else {
							var u = void 0;
							for (o[8] = o[13] = o[18] = o[23] = "ZC", o[14] = "4", i = 0; i < 36; i++) o[i] || (u = 0 | 16 * Math.random(), o[i] = a[19 === i ? 3 & u | 8 : u])
						}
						return t + "" + o.join("")
					}
				}, {
					key: "createRandom",
					value: function(e, t) {
						return parseInt(Math.random() * (t - e + 1) + e)
					}
				}, {
					key: "objectXZ",
					value: function(e) {
						var t = {
							id: "",
							category: ""
						};
						return e && Object.assign(t, e), t.removeFromMap = function() {}, t.show = function(e) {}, t
					}
				}, {
					key: "assignObject",
					value: function(e) {
						var t = {};
						return Object.assign(t, e), t
					}
				}]), e
			}();
		t.
	default = a, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		}), t.stringToRgbObj = o, t.stringToRgbString = function(e) {
			var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null,
				n = o(e);
			return n ? "rgba(" + n.r + "," + n.g + "," + n.b + "," + n.a + ")" : t
		}, t.stringToRgbPre = function(e) {
			var t = o(e);
			return t.r = t.r / 255, t.g = t.g / 255, t.b = t.b / 255, t
		}, t.getUe4Color = i, t.transformUe4Colors = function(e) {
			return e ? e.map((function(e) {
				return i(e)
			})) : []
		}, t.getSubArr = function(e, t) {
			var n = {};
			if (t.forEach((function(e) {
				return n[e] = []
			})), !e) return n;
			var r = !0,
				a = !1,
				o = void 0;
			try {
				for (var i, u = e[Symbol.iterator](); !(r = (i = u.next()).done); r = !0) {
					var l = i.value,
						s = !0,
						c = !1,
						f = void 0;
					try {
						for (var d, h = t[Symbol.iterator](); !(s = (d = h.next()).done); s = !0) {
							var y = d.value;
							n[y].push(l[y])
						}
					} catch (e) {
						c = !0, f = e
					} finally {
						try {
							!s && h.
							return &&h.
							return ()
						} finally {
							if (c) throw f
						}
					}
				}
			} catch (e) {
				a = !0, o = e
			} finally {
				try {
					!r && u.
					return &&u.
					return ()
				} finally {
					if (a) throw o
				}
			}
			return n
		};
		var r = {
			rgba: new RegExp("rgba[\\s|\\(]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))[,|\\s]+((?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?))\\s*\\)?"),
			hex6: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/
		};

		function a(e) {
			return parseInt(e, 16)
		}
		function o(e) {
			var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null,
				n = null;
			return (n = r.rgba.exec(e)) ? {
				r: n[1],
				g: n[2],
				b: n[3],
				a: n[4]
			} : (n = r.hex6.exec(e)) ? {
				r: a(n[1]),
				g: a(n[2]),
				b: a(n[3]),
				a: 1
			} : t
		}
		function i(e) {
			var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null;
			if (!e) return i(t, {
				r: 0,
				g: 0,
				b: 0,
				a: 1
			});
			if ("string" == typeof e) {
				var n = o(e);
				return n ? {
					r: (n.r / 255).toFixed(4),
					g: (n.g / 255).toFixed(4),
					b: (n.b / 255).toFixed(4),
					a: n.a
				} : i(t, {
					r: 0,
					g: 0,
					b: 0,
					a: 1
				})
			}
			return e
		}
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ?
		function(e) {
			return typeof e
		} : function(e) {
			return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
		}, a = i(n(2)), o = i(n(9));

		function i(e) {
			return e && e.__esModule ? e : {
			default:
				e
			}
		}
		var u = {};

		function l(e, t, n) {
			return "Expected " + n + " to be typeof " + t + ", actual typeof was " + e
		}
		u.typeOf = {}, u.defined = function(e, t) {
			if (!(0, a.
		default)(t)) throw new o.
		default (function(e) {
				return e + " is required, actual value was undefined"
			}(e))
		}, u.typeOf.func = function(e, t) {
			if ("function" != typeof t) throw new o.
		default (l(void 0 === t ? "undefined" : r(t), "function", e))
		}, u.typeOf.string = function(e, t) {
			if ("string" != typeof t) throw new o.
		default (l(void 0 === t ? "undefined" : r(t), "string", e))
		}, u.typeOf.number = function(e, t) {
			if ("number" != typeof t) throw new o.
		default (l(void 0 === t ? "undefined" : r(t), "number", e))
		}, u.typeOf.number.lessThan = function(e, t, n) {
			if (u.typeOf.number(e, t), t >= n) throw new o.
		default ("Expected " + e + " to be less than " + n + ", actual value was " + t)
		}, u.typeOf.number.lessThanOrEquals = function(e, t, n) {
			if (u.typeOf.number(e, t), t > n) throw new o.
		default ("Expected " + e + " to be less than or equal to " + n + ", actual value was " + t)
		}, u.typeOf.number.greaterThan = function(e, t, n) {
			if (u.typeOf.number(e, t), t <= n) throw new o.
		default ("Expected " + e + " to be greater than " + n + ", actual value was " + t)
		}, u.typeOf.number.greaterThanOrEquals = function(e, t, n) {
			if (u.typeOf.number(e, t), t < n) throw new o.
		default ("Expected " + e + " to be greater than or equal to" + n + ", actual value was " + t)
		}, u.typeOf.object = function(e, t) {
			if ("object" !== (void 0 === t ? "undefined" : r(t))) throw new o.
		default (l(void 0 === t ? "undefined" : r(t), "object", e))
		}, u.typeOf.bool = function(e, t) {
			if ("boolean" != typeof t) throw new o.
		default (l(void 0 === t ? "undefined" : r(t), "boolean", e))
		}, u.typeOf.number.equals = function(e, t, n, r) {
			if (u.typeOf.number(e, n), u.typeOf.number(t, r), n !== r) throw new o.
		default (e + " must be equal to " + t + ", the actual values are " + n + " and " + r)
		}, t.
	default = u, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r, a = n(2),
			o = (r = a) && r.__esModule ? r : {
			default:
				r
			};

		function i(e) {
			var t;
			this.name = "DeveloperError", this.message = e;
			try {
				throw new Error
			} catch (e) {
				t = e.stack
			}
			this.stack = t
		}(0, o.
	default)(Object.create) && (i.prototype = Object.create(Error.prototype), i.prototype.constructor = i), i.prototype.toString = function() {
			var e = this.name + ": " + this.message;
			return (0, o.
		default)(this.stack) && (e += "\n" + this.stack.toString()), e
		}, i.throwInstantiationError = function() {
			throw new i("This function defines an interface and should not be called directly.")
		}, t.
	default = i, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";

		function r(e, t) {
			if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
		}
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		t.
	default = function e() {
			var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 0,
				n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 0;
			r(this, e), this.x = t, this.y = n
		}, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r, a = n(10);

		function o(e, t) {
			if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
		}
		function i(e, t) {
			if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
			return !t || "object" != typeof t && "function" != typeof t ? e : t
		}
		var u = function(e) {
				function t() {
					var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 0,
						n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 0,
						r = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 0;
					o(this, t);
					var a = i(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this, e, n));
					return a.z = r, a
				}
				return function(e, t) {
					if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
					e.prototype = Object.create(t && t.prototype, {
						constructor: {
							value: e,
							enumerable: !1,
							writable: !0,
							configurable: !0
						}
					}), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
				}(t, e), t
			}(((r = a) && r.__esModule ? r : {
			default:
				r
			}).
		default);
		t.
	default = u, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r = function() {
				function e(e, t) {
					for (var n = 0; n < t.length; n++) {
						var r = t[n];
						r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
					}
				}
				return function(t, n, r) {
					return n && e(t.prototype, n), r && e(t, r), t
				}
			}(),
			a = c(n(3)),
			o = c(n(13)),
			i = c(n(28)),
			u = c(n(14)),
			l = c(n(5)),
			s = n(0);

		function c(e) {
			return e && e.__esModule ? e : {
			default:
				e
			}
		}
		function f(e, t) {
			if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
		}
		var d = function() {
				function e() {
					var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : null;
					f(this, e), this.engineOrigin = {
						x: 117.038112825,
						y: 39.382696649
					}, t && Object.assign(this.engineOrigin, t), this._initTrans(), this.release = ["transformWGS84ToLocal", "transformLocalToWGS84", "transformWGS84ToLocalNum", "transformWGS84ToLocalObj2", "transformWGS84ToLocalObj"], this.releaseGIS = []
				}
				return r(e, [{
					key: "_initTrans",
					value: function(e) {
						e && Object.assign(this.engineOrigin, e), this.RCSorigincenter = a.
					default.fromDegrees(this.engineOrigin.x, this.engineOrigin.y, 0), this.RCSMatrix = i.
					default.eastSouthUpToFixedFrame(this.RCSorigincenter), this.RCSmatrixInverse = o.
					default.inverseTransformation(this.RCSMatrix, new o.
					default)
					}
				}, {
					key: "localToWorldCoordinates",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null;
						return t || (t = new a.
					default), o.
					default.multiplyByPoint(this.RCSMatrix, e, t), t
					}
				}, {
					key: "worldCoordinatesToLocal",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null;
						return t || (t = new a.
					default), o.
					default.multiplyByPoint(this.RCSmatrixInverse, e, t), t
					}
				}, {
					key: "WGS84CoordinatesToLocal",
					value: function(e, t) {
						var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 0,
							r = a.
						default.fromDegrees(e, t, n),
							o = this.worldCoordinatesToLocal(r);
						return a.
					default.multiplyComponents(o, new a.
					default (100, 100, 0), new a.
					default)
					}
				}, {
					key: "transformScreenToLocal",
					value: function(e, t) {}
				}, {
					key: "transformWGS84ToLocal",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 0,
							n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 0;
						return (0, s.isVectorLagObject)(e) ? this.transformWGS84ToLocalObj(e) : this.transformWGS84ToLocalNum(e, t, n)
					}
				}, {
					key: "transformWGS84ToLocalObj",
					value: function(e) {
						return this.transformWGS84ToLocalNum(e.x, e.y, e.z)
					}
				}, {
					key: "transformWGS84ToLocalObj2",
					value: function(e) {
						var t = this.transformWGS84ToLocalNum(e.x, e.y, e.z);
						return e.x = t.x, e.y = t.y, e.z = t.z, t
					}
				}, {
					key: "transformWGS84ToLocalNum",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 0,
							n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 0,
							r = a.
						default.fromDegrees(e, t, 0);
						return r = this.worldCoordinatesToLocal(r), (r = a.
					default.multiplyComponents(r, new a.
					default (100, 100, 0), {})).z = n, r
					}
				}, {
					key: "transformLocalToWGS84",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 0,
							n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 0,
							r = e;
						(0, s.isVectorXYObject)(e) && (r = e.x || 0, t = e.y || 0, n = e.z || 0);
						var o = {
							longitude: 0,
							latitude: 0,
							height: 0
						},
							i = this.localToWorldCoordinates(new a.
						default (r / 100, t / 100, 0));
						return u.
					default.WGS84.cartesianToCartographic(i, o), o.x = l.
					default.toDegrees(o.longitude), o.y = l.
					default.toDegrees(o.latitude), o.z = n, {
							x: o.x,
							y: o.y,
							z: o.z
						}
					}
				}, {
					key: "destroy",
					value: function() {}
				}]), e
			}();
		t.
	default = d, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r = o(n(4)),
			a = o(n(8));

		function o(e) {
			return e && e.__esModule ? e : {
			default:
				e
			}
		}
		function i(e, t, n, a, o, i, u, l, s, c, f, d, h, y, p, v) {
			this[0] = (0, r.
		default)(e, 0), this[1] = (0, r.
		default)(o, 0), this[2] = (0, r.
		default)(s, 0), this[3] = (0, r.
		default)(h, 0), this[4] = (0, r.
		default)(t, 0), this[5] = (0, r.
		default)(i, 0), this[6] = (0, r.
		default)(c, 0), this[7] = (0, r.
		default)(y, 0), this[8] = (0, r.
		default)(n, 0), this[9] = (0, r.
		default)(u, 0), this[10] = (0, r.
		default)(f, 0), this[11] = (0, r.
		default)(p, 0), this[12] = (0, r.
		default)(a, 0), this[13] = (0, r.
		default)(l, 0), this[14] = (0, r.
		default)(d, 0), this[15] = (0, r.
		default)(v, 0)
		}
		i.inverseTransformation = function(e, t) {
			a.
		default.typeOf.object("matrix", e), a.
		default.typeOf.object("result", t);
			var n = e[0],
				r = e[1],
				o = e[2],
				i = e[4],
				u = e[5],
				l = e[6],
				s = e[8],
				c = e[9],
				f = e[10],
				d = e[12],
				h = e[13],
				y = e[14],
				p = -n * d - r * h - o * y,
				v = -i * d - u * h - l * y,
				m = -s * d - c * h - f * y;
			return t[0] = n, t[1] = i, t[2] = s, t[3] = 0, t[4] = r, t[5] = u, t[6] = c, t[7] = 0, t[8] = o, t[9] = l, t[10] = f, t[11] = 0, t[12] = p, t[13] = v, t[14] = m, t[15] = 1, t
		}, i.multiplyByPoint = function(e, t, n) {
			a.
		default.typeOf.object("matrix", e), a.
		default.typeOf.object("cartesian", t), a.
		default.typeOf.object("result", n);
			var r = t.x,
				o = t.y,
				i = t.z,
				u = e[0] * r + e[4] * o + e[8] * i + e[12],
				l = e[1] * r + e[5] * o + e[9] * i + e[13],
				s = e[2] * r + e[6] * o + e[10] * i + e[14];
			return n.x = u, n.y = l, n.z = s, n
		}, t.
	default = i, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r = s(n(3)),
			a = s(n(4)),
			o = s(n(5)),
			i = s(n(2)),
			u = s(n(15)),
			l = s(n(29));

		function s(e) {
			return e && e.__esModule ? e : {
			default:
				e
			}
		}
		function c(e, t, n, i) {
			t = (0, a.
		default)(t, 0), n = (0, a.
		default)(n, 0), i = (0, a.
		default)(i, 0), e._radii = new r.
		default (t, n, i), e._radiiSquared = new r.
		default (t * t, n * n, i * i), e._radiiToTheFourth = new r.
		default (t * t * t * t, n * n * n * n, i * i * i * i), e._oneOverRadii = new r.
		default (0 === t ? 0 : 1 / t, 0 === n ? 0 : 1 / n, 0 === i ? 0 : 1 / i), e._oneOverRadiiSquared = new r.
		default (0 === t ? 0 : 1 / (t * t), 0 === n ? 0 : 1 / (n * n), 0 === i ? 0 : 1 / (i * i)), e._minimumRadius = Math.min(t, n, i), e._maximumRadius = Math.max(t, n, i), e._centerToleranceSquared = o.
		default.EPSILON1, 0 !== e._radiiSquared.z && (e._squaredXOverSquaredZ = e._radiiSquared.x / e._radiiSquared.z)
		}
		function f(e, t, n) {
			this._radii = void 0, this._radiiSquared = void 0, this._radiiToTheFourth = void 0, this._oneOverRadii = void 0, this._oneOverRadiiSquared = void 0, this._minimumRadius = void 0, this._maximumRadius = void 0, this._centerToleranceSquared = void 0, this._squaredXOverSquaredZ = void 0, c(this, e, t, n)
		}
		Object.defineProperties(f.prototype, {
			radii: {
				get: function() {
					return this._radii
				}
			},
			radiiSquared: {
				get: function() {
					return this._radiiSquared
				}
			},
			radiiToTheFourth: {
				get: function() {
					return this._radiiToTheFourth
				}
			},
			oneOverRadii: {
				get: function() {
					return this._oneOverRadii
				}
			},
			oneOverRadiiSquared: {
				get: function() {
					return this._oneOverRadiiSquared
				}
			},
			minimumRadius: {
				get: function() {
					return this._minimumRadius
				}
			},
			maximumRadius: {
				get: function() {
					return this._maximumRadius
				}
			}
		}), f.clone = function(e, t) {
			if ((0, i.
		default)(e)) {
				var n = e._radii;
				return (0, i.
			default)(t) ? (r.
			default.clone(n, t._radii), r.
			default.clone(e._radiiSquared, t._radiiSquared), r.
			default.clone(e._radiiToTheFourth, t._radiiToTheFourth), r.
			default.clone(e._oneOverRadii, t._oneOverRadii), r.
			default.clone(e._oneOverRadiiSquared, t._oneOverRadiiSquared), t._minimumRadius = e._minimumRadius, t._maximumRadius = e._maximumRadius, t._centerToleranceSquared = e._centerToleranceSquared, t) : new f(n.x, n.y, n.z)
			}
		}, f.fromCartesian3 = function(e, t) {
			return (0, i.
		default)(t) || (t = new f), (0, i.
		default)(e) ? (c(t, e.x, e.y, e.z), t) : t
		}, f.WGS84 = Object.freeze(new f(6378137, 6378137, 6356752.314245179)), f.UNIT_SPHERE = Object.freeze(new f(1, 1, 1)), f.MOON = Object.freeze(new f(o.
	default.LUNAR_RADIUS, o.
	default.LUNAR_RADIUS, o.
	default.LUNAR_RADIUS)), f.prototype.clone = function(e) {
			return f.clone(this, e)
		}, f.packedLength = r.
	default.packedLength, f.pack = function(e, t, n) {
			return n = (0, a.
		default)(n, 0), r.
		default.pack(e._radii, t, n), t
		}, f.unpack = function(e, t, n) {
			t = (0, a.
		default)(t, 0);
			var o = r.
		default.unpack(e, t);
			return f.fromCartesian3(o, n)
		}, f.prototype.geocentricSurfaceNormal = r.
	default.normalize, f.prototype.geodeticSurfaceNormalCartographic = function(e, t) {
			var n = e.longitude,
				a = e.latitude,
				o = Math.cos(a),
				i = o * Math.cos(n),
				u = o * Math.sin(n),
				l = Math.sin(a);
			return t.x = i, t.y = u, t.z = l, r.
		default.normalize(t, t)
		}, f.prototype.geodeticSurfaceNormal = function(e, t) {
			return (0, i.
		default)(t) || (t = new r.
		default), t = r.
		default.multiplyComponents(e, this._oneOverRadiiSquared, t), r.
		default.normalize(t, t)
		};
		var d = new r.
	default,
			h = new r.
		default;
		f.prototype.cartographicToCartesian = function(e, t) {
			var n = d,
				a = h;
			this.geodeticSurfaceNormalCartographic(e, n), r.
		default.multiplyComponents(this._radiiSquared, n, a);
			var o = Math.sqrt(r.
		default.dot(n, a));
			return r.
		default.divideByScalar(a, o, a), r.
		default.multiplyByScalar(n, e.height, n), (0, i.
		default)(t) || (t = new r.
		default), r.
		default.add(a, n, t)
		}, f.prototype.cartographicArrayToCartesianArray = function(e, t) {
			var n = e.length;
			null == t ? t = new Array(n) : t.length = n;
			for (var r = 0; r < n; r++) t[r] = this.cartographicToCartesian(e[r], t[r]);
			return t
		};
		var y = new r.
	default,
			p = new r.
		default,
			v = new r.
		default;
		f.prototype.cartesianToCartographic = function(e, t) {
			var n = this.scaleToGeodeticSurface(e, p);
			if (null != n) {
				var a = this.geodeticSurfaceNormal(n, y),
					u = r.
				default.subtract(e, n, v),
					s = Math.atan2(a.y, a.x),
					c = Math.asin(a.z),
					f = o.
				default.sign(r.
				default.dot(u, e)) * r.
				default.magnitude(u);
				return (0, i.
			default)(t) ? (t.longitude = s, t.latitude = c, t.height = f, t):
				new l.
			default (s, c, f)
			}
		}, f.prototype.cartesianArrayToCartographicArray = function(e, t) {
			var n = e.length;
			(0, i.
		default)(t) ? t.length = n : t = new Array(n);
			for (var r = 0; r < n; ++r) t[r] = this.cartesianToCartographic(e[r], t[r]);
			return t
		}, f.prototype.scaleToGeodeticSurface = function(e, t) {
			return (0, u.
		default)(e, this._oneOverRadii, this._oneOverRadiiSquared, this._centerToleranceSquared, t)
		}, f.prototype.scaleToGeocentricSurface = function(e, t) {
			(0, i.
		default)(t) || (t = new r.
		default);
			var n = e.x,
				a = e.y,
				o = e.z,
				u = this._oneOverRadiiSquared,
				l = 1 / Math.sqrt(n * n * u.x + a * a * u.y + o * o * u.z);
			return r.
		default.multiplyByScalar(e, l, t)
		}, f.prototype.transformPositionToScaledSpace = function(e, t) {
			return (0, i.
		default)(t) || (t = new r.
		default), r.
		default.multiplyComponents(e, this._oneOverRadii, t)
		}, f.prototype.transformPositionFromScaledSpace = function(e, t) {
			return (0, i.
		default)(t) || (t = new r.
		default), r.
		default.multiplyComponents(e, this._radii, t)
		}, f.prototype.equals = function(e) {
			return this === e || (0, i.
		default)(e) && r.
		default.equals(this._radii, e._radii)
		}, f.prototype.toString = function() {
			return this._radii.toString()
		}, f.prototype.getSurfaceNormalIntersectionWithZAxis = function(e, t, n) {
			t = (0, a.
		default)(t, 0);
			var o = this._squaredXOverSquaredZ;
			if ((0, i.
		default)(n) || (n = new r.
		default), n.x = 0, n.y = 0, n.z = e.z * (1 - o), !(Math.abs(n.z) >= this._radii.z - t)) return n
		}, t.
	default = f, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r = u(n(3)),
			a = u(n(2)),
			o = u(n(9)),
			i = u(n(5));

		function u(e) {
			return e && e.__esModule ? e : {
			default:
				e
			}
		}
		var l = new r.
	default,
			s = new r.
		default;
		t.
	default = function(e, t, n, u, c) {
			if (!(0, a.
		default)(e)) throw new o.
		default ("cartesian is required.");
			if (!(0, a.
		default)(t)) throw new o.
		default ("oneOverRadii is required.");
			if (!(0, a.
		default)(n)) throw new o.
		default ("oneOverRadiiSquared is required.");
			if (!(0, a.
		default)(u)) throw new o.
		default ("centerToleranceSquared is required.");
			var f = e.x,
				d = e.y,
				h = e.z,
				y = t.x,
				p = t.y,
				v = t.z,
				m = f * f * y * y,
				g = d * d * p * p,
				b = h * h * v * v,
				w = m + g + b,
				O = Math.sqrt(1 / w),
				_ = r.
			default.multiplyByScalar(e, O, l);
			if (w < u) return isFinite(O) ? r.
		default.clone(_, c):
			void 0;
			var S = n.x,
				M = n.y,
				j = n.z,
				k = s;
			k.x = _.x * S * 2, k.y = _.y * M * 2, k.z = _.z * j * 2;
			var P, x, T, C, E, I, R, N = (1 - O) * r.
		default.magnitude(e) / (.5 * r.
		default.magnitude(k)),
				A = 0;
			do {
				A = (P = m * (E = (x = 1 / (1 + (N -= A) * S)) * x) + g * (I = (T = 1 / (1 + N * M)) * T) + b * (R = (C = 1 / (1 + N * j)) * C) - 1) / (-2 * (m * (E * x) * S + g * (I * T) * M + b * (R * C) * j))
			} while (Math.abs(P) > i.
		default.EPSILON12);
			return (0, a.
		default)(c) ? (c.x = f * x, c.y = d * T, c.z = h * C, c):
			new r.
		default (f * x, d * T, h * C)
		}, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";

		function r(e, t) {
			if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
		}
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		t.
	default = function e() {
			var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : -1e4,
				n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 1e4,
				a = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 1e4,
				o = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : -1e4;
			r(this, e), this.west = t, this.east = n, this.south = a, this.north = o
		}, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";

		function r(e, t) {
			if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
		}
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		t.
	default = function e() {
			var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 0,
				n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 0,
				a = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 0;
			r(this, e), this.roll = t, this.pitch = n, this.yaw = a
		}, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ?
		function(e) {
			return typeof e
		} : function(e) {
			return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
		}, a = function() {
			function e(e, t) {
				for (var n = 0; n < t.length; n++) {
					var r = t[n];
					r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
				}
			}
			return function(t, n, r) {
				return n && e(t.prototype, n), r && e(t, r), t
			}
		}(), o = g(n(20)), i = g(n(6)), u = g(n(21)), l = g(n(22)), s = g(n(24)), c = g(n(25)), f = g(n(26)), d = g(n(27)), h = g(n(12)), y = n(0), p = g(n(16)), v = g(n(30)), m = g(n(19));

		function g(e) {
			return e && e.__esModule ? e : {
			default:
				e
			}
		}
		function b(e, t) {
			if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
		}
		var w = function() {
				function e() {
					var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : null,
						n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null;
					b(this, e), this.id = i.
				default.createUUid("TU_"), this.showLog = !1, this.message = null, this._initData(), this._initControls(), this._releaseApi(), this._initDefaultOptions(t, n), this.options.defaultRender && this.initMap()
				}
				return a(e, [{
					key: "_initData",
					value: function() {
						this.version = 2, this.serverVersion = 2, this.ue4Version = 2, this.messageFlag = !0, this.rendered = !1, this._loadedUrl = "", this._loadUrl = "", this.config = {
							center: {
								x: 117.038112825,
								y: 39.382696649
							},
							bounds: new p.
						default (-25e4, 25e4, 25e4, -25e4),
							resolution:
							{
								width: 1920,
								height: 1080
							}
						}, this.containerId = null, this.frameId = i.
					default.createOID("tu_iframe_"), this.iframeWindow = null, this.loaded = !1, this.isLoading = !1, this.inited = !1, this.parentDom = null, this._container = null, this._iview = null, this._loadingView = null
					}
				}, {
					key: "_initDefaultOptions",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null,
							n = {
								id: "",
								url: "",
								showLog: !1,
								serverVersion: 2,
								ue4Version: 2,
								defaultRender: !0,
								autoView: !0,
								timeOut: 15e3,
								resolution: null,
								doubleRender: !1,
								location: null,
								rotation: null,
								distance: null,
								onInit: null,
								onError: null,
								onBegin: null,
								onClose: null,
								onResetView: null,
								onCameraChange: null
							};
						return e && (e = "object" === (void 0 === e ? "undefined" : r(e)) ? e : {
							id: e,
							url: t
						}, Object.assign(n, e)), this.options = n, this.serverVersion = n.serverVersion, this.ue4Version = n.ue4Version, this.containerId = n.autoView ? n.id : null, this.frameId = n.autoView ? i.
					default.createOID("tu_iframe_"):
						n.id, this.showLog = n.showLog, this.options
					}
				}, {
					key: "_initControls",
					value: function() {
						this.transform = new h.
					default (this.config.center), this.camera = new o.
					default (this, this.options), this.factory = new v.
					default (this, this.options), this.environment = new f.
					default (this, this.options), this.measure = new u.
					default (this, this.options), this.objectFactory = new l.
					default (this, this.options), this.selectTool = new s.
					default (this, this.options), this.view = new c.
					default (this, this.options), this.analysis = new d.
					default (this, this.options), this.controls = [this.transform, this.factory, this.view, this.analysis, this.camera, this.environment, this.measure, this.objectFactory, this.selectTool]
					}
				}, {
					key: "initMap",
					value: function() {
						var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : null;
						e && this._initDefaultOptions(e), this._createView(), this.message = new m.
					default (this), this.rendered = !0
					}
				}, {
					key: "_createView",
					value: function() {
						this.options.autoView && this.options.url && (this.parentDom = (typeof this.containerId === 'object' ? this.containerId : document.getElementById(this.containerId)), this.parentDom ? ((0, y.addGobalClass)(y.tumapStyle), this._container = document.createElement("div"), this._container.setAttribute("class", "-tu-container"), this._iview = document.createElement("iframe"), this._iview.setAttribute("class", "-tu-container-iview"), this._iview.setAttribute("id", this.frameId), this._loadingView = (0, y.createLoading)(), this._loadingView.style.display = "none", this._container.appendChild(this._iview), this._container.appendChild(this._loadingView), this.parentDom.appendChild(this._container), this._render()) : this._traceError("容器 " + this.containerId + " 不存在!", "DomError"))
					}
				}, {
					key: "_render",
					value: function() {
						var e = this.options.url;
						e && this._iview && (this._resetLoadState(), this._loadUrl = e, this.setLoading(!0), this._startStateTimer(), this._iview.setAttribute("src", ""), this._iview.setAttribute("src", e + "?r=" + this.id))
					}
				}, {
					key: "reLoadMap",
					value: function() {
						this._render()
					}
				}, {
					key: "unLoadMap",
					value: function() {
						this._resetLoadState(), this._iview && this._iview.setAttribute("src", "")
					}
				}, {
					key: "setUrl",
					value: function(e) {
						var t = !(arguments.length > 1 && void 0 !== arguments[1]) || arguments[1];
						this.options.value = e, (t || this._loadedUrl !== e) && this.reLoadMap()
					}
				}, {
					key: "_startStateTimer",
					value: function() {
						var e = this;
						this.__cId && clearTimeout(this.__cId), this.__cId = setTimeout((function() {
							clearTimeout(e.__cId), !1 === e.loaded && e.isLoading && e._loadError()
						}), this.options.timeOut)
					}
				}, {
					key: "_stopStateTimer",
					value: function() {
						this.__cId && clearTimeout(this.__cId)
					}
				}, {
					key: "_loadError",
					value: function(e) {
						this._stopStateTimer(), this.loaded = !1, this.setLoading(!1), this._traceError("远程服务连接失败！", "LoadError")
					}
				}, {
					key: "_initIFrameView",
					value: function() {
						var e = this.options,
							t = e.doubleRender,
							n = e.distance,
							r = e.location,
							a = e.rotation,
							o = e.resolution;
						this._postMessage({
							type: "Init",
							id: this.id
						}), o && o.hasOwnProperty("width") && o.hasOwnProperty("height") && this.objectFactory.setResolution(o.width, o.height), t && this.objectFactory.doubleRendering(!0), (r || a) && this.camera.setView({
							location: r,
							rotation: a,
							distance: n
						})
					}
				}, {
					key: "setWaitting",
					value: function(e) {
						this.messageFlag = !e, e ? this.unLoadMap() : this.reLoadMap()
					}
				}, {
					key: "execute",
					value: function(e, t, n) {
						var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : null;
						this._postMessage({
							namespace: e,
							type: t,
							param: n,
							Currency: "Currency"
						}, r)
					}
				}, {
					key: "_postMessage",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null;
						this.message && this.message.send(e, t)
					}
				}, {
					key: "_connectedHandler",
					value: function(e) {
						if (this.setLoading(!1), this.loaded = !0, this.inited = !0, this._loadedUrl = this._loadUrl, e.data) {
							var t = e.data;
							if (e.data && e.data.data && (t = e.data.data), t.config && t.config.center && (this.config.center = {
								x: t.config.center.lng,
								y: t.config.center.lat
							}), t.bounds && (this.config.bounds = t.bounds), this.transform._initTrans(this.config.center), t.LocalHostResolution && (this.config.resolution.width = t.LocalHostResolution.x || 1920, this.config.resolution.height = t.LocalHostResolution.y || 1080), t.CameraTransform) {
								var n = t.CameraTransform;
								if (n.Location && Object.assign(this.camera.location, n.Location), n.Rotation && Object.assign(this.camera.rotation, n.Rotation), n.CameraArmLength) {
									var r = parseFloat(n.CameraArmLength);
									this.camera.distance = isNaN(r) ? 0 : r
								}
							}
						}
						this._initIFrameView(), this.options.onInit && this.options.onInit(this)
					}
				}, {
					key: "_connectCloseHandler",
					value: function() {
						this.setLoading(!1), this.inited = !1, this.options.onClose && this.options.onClose()
					}
				}, {
					key: "_resetLoadState",
					value: function() {
						this._loadedUrl = null, this._loadUrl = null, this.loaded = !1, this.inited = !1, this.setLoading(!1)
					}
				}, {
					key: "setLoading",
					value: function(e) {
						this.isLoading = e, this._loadingView && (this._loadingView.style.display = e ? "flex" : "none")
					}
				}, {
					key: "_traceError",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "TUMAP";
						console.log("TUMap Error:" + e), this.options.onError && this.options.onError({
							message: e,
							code: t
						})
					}
				}, {
					key: "_releaseApi",
					value: function() {
						var e = !0,
							t = !1,
							n = void 0;
						try {
							for (var r, a = this.controls[Symbol.iterator](); !(e = (r = a.next()).done); e = !0) {
								var o = r.value;
								this._createItemsApi(o, o.release), this._createItemsApi(o, o.release, "GIS"), this._createItemsApi(o, o.releaseGIS)
							}
						} catch (e) {
							t = !0, n = e
						} finally {
							try {
								!e && a.
								return &&a.
								return ()
							} finally {
								if (t) throw n
							}
						}
					}
				}, {
					key: "_createItemsApi",
					value: function(e, t) {
						var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : "",
							r = !0,
							a = !1,
							o = void 0;
						try {
							for (var i, u = t[Symbol.iterator](); !(r = (i = u.next()).done); r = !0) {
								var l = i.value;
								Array.isArray(l) ? this._createItemApi(e, l[0], l[1] + n) : this._createItemApi(e, l, l + n)
							}
						} catch (e) {
							a = !0, o = e
						} finally {
							try {
								!r && u.
								return &&u.
								return ()
							} finally {
								if (a) throw o
							}
						}
					}
				}, {
					key: "_createItemApi",
					value: function(e, t, n) {
						this.hasOwnProperty(n) || (this[n] = function() {
							return e[t].apply(e, arguments)
						})
					}
				}, {
					key: "_getIframeWindow",
					value: function() {
						return this.iframeWindow = document.getElementById(this.frameId), this.iframeWindow ? this.iframeWindow : null
					}
				}, {
					key: "destroy",
					value: function() {
						try {
							this.message && this.message.destroy(), this.parentDom && (this.parentDom.innerHTML = ""), this.controls && this.controls.forEach((function(e) {
								return e.destroy()
							})), this.controls = [], this.inited = !1, this.loaded = !1, this.isDestroy = !0
						} catch (e) {}
					}
				}], [{
					key: "createMap",
					value: function(t) {
						var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null;
						return new e(t, n)
					}
				}]), e
			}();
		t.
	default = w, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r, a = function() {
				function e(e, t) {
					for (var n = 0; n < t.length; n++) {
						var r = t[n];
						r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
					}
				}
				return function(t, n, r) {
					return n && e(t.prototype, n), r && e(t, r), t
				}
			}(),
			o = n(0),
			i = n(31),
			u = (r = i) && r.__esModule ? r : {
			default:
				r
			};
		var l = function() {
				function e(t) {
					!
					function(e, t) {
						if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
					}(this, e), this.owner = t, this.methodMap = {}, this.catchMoreFunc = {
						select: !0,
						pickposition: !0,
						pickobject: !0,
						pickcomponent: !0
					}, this.callBackTemp = null, this.callBackName = "", this.callBackCurrency = null, u.
				default.initListener(this.owner)
				}
				return a(e, [{
					key: "send",
					value: function(e, t) {
						if (e.Currency) {
							var n = e.Currency;
							this.methodMap.hasOwnProperty(n) || (this.methodMap[n] = []), t && (this.callBackCurrency = t, this.callBackName = n)
						} else {
							var r = e.type.toLocaleLowerCase();
							this.methodMap.hasOwnProperty(r) || (this.methodMap[r] = []), t && (this.callBackTemp = t, this.callBackName = r), t && (Array.isArray(t) && t.length > 0 ? (this.methodMap[r] = this.methodMap[r].concat(t), this.callBackTemp = t[0].func) : this.methodMap[r].push(t))
						}
						u.
					default.postMessage(this.owner, e)
					}
				}, {
					key: "_messageOutHandler",
					value: function(e) {
						e && "CameraInfo" === e.callBack && this._cameraInfoHandler(e)
					}
				}, {
					key: "_messageHandler",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null,
							n = e.callBack;
						e.data && e.data.serviceVersion ? (this.owner.serverVersion = e.data.serviceVersion, this.owner.ue4Version = e.data.ue4Version) : e && e.serviceVersion && (this.owner.serverVersion = e.serviceVersion, this.owner.ue4Version = e.ue4Version), "CameraInfo" !== n || this.owner.showLog && ("CameraInfo" === n ? this._cameraInfoHandler(e, t) : "CallBackOneParam" === n ? this._oneParamHandler(e, t) : "CallBackNoParam" === n ? this._noParamHandler(e, t) : "Currency" === e.ResType ? this.handlerCurrency(e, t) : this._newParamHandler(e, t))
					}
				}, {
					key: "_noParamHandler",
					value: function(e) {
						var t = e.customStr;
						if ("connected" === t) this.owner._connectedHandler(e);
						else if ("wsDisConnect" === t) this.owner._connectCloseHandler(e);
						else if ("Restart" === t) this.owner.options.onResetView && this.owner.options.onResetView();
						else if ("WorldBegin" === t) this.owner.options.onBegin && this.owner.options.onBegin();
						else {
							if (this.handlerNewResult(e.data)) return;
							this.handlerOldResult()
						}
					}
				}, {
					key: "_cameraInfoHandler",
					value: function(e) {
						var t = e.camera;
						e.data && e.data.camera ? t = e.data.camera : e.data && e.data.data && e.data.data.camera && (t = e.data.data.camera), this._refreshCamera(t.location, t.rotation, t.distance)
					}
				}, {
					key: "_oneParamHandler",
					value: function(e) {
						var t = e.customStr || "",
							n = e.info || {},
							r = e.args || null;
						this.updateCamreaInfo(e), this.handlerNewResult(e.data) || ("pickWidget" === t ? this.owner.measure.callBackPick && this.owner.measure.callBackPick(n) : "pickID" === t ? this.owner.measure.callBackPickID && this.owner.measure.callBackPickID(n) : this.callBackTemp && (this.callBackTemp(n, r), this.clearCatchFunc(Currency)))
					}
				}, {
					key: "_newParamHandler",
					value: function(e) {
						if (!this.handlerNewResult(e)) {
							var t = null;
							e && e.data && e.data.args && (t = e.data.args), "Currency" === e.ResType ? this.handlerCurrency(e) : this.handlerOldResult(t)
						}
					}
				}, {
					key: "handlerCurrency",
					value: function(e) {
						this.callBackCurrency && (this.callBackCurrency(e), this.clearCatchFunc(this.callBackName))
					}
				}, {
					key: "handlerNewResult",
					value: function(e) {
						if (!e || !e.data || !e.data.CallBackFunc) return !1;
						var t = e.data.CallBackFunc.toLocaleLowerCase();
						if (!this.methodMap.hasOwnProperty(t)) return !0;
						var n = this.methodMap[t],
							r = !0,
							a = !1,
							o = void 0;
						try {
							for (var i, u = n[Symbol.iterator](); !(r = (i = u.next()).done); r = !0) {
								var l = i.value;
								try {
									l(e.data.args)
								} catch (e) {}
							}
						} catch (e) {
							a = !0, o = e
						} finally {
							try {
								!r && u.
								return &&u.
								return ()
							} finally {
								if (a) throw o
							}
						}
						return this.clearCatchFunc(t), !0
					}
				}, {
					key: "handlerOldResult",
					value: function(e) {
						this.callBackTemp && (this.callBackTemp(e), this.clearCatchFunc(this.callBackName))
					}
				}, {
					key: "clearCatchFunc",
					value: function(e) {
						this.catchMoreFunc.hasOwnProperty(e) || this.clearItemReback(e)
					}
				}, {
					key: "clearItemReback",
					value: function(e) {
						e && (e = e.toLocaleLowerCase(), this.methodMap.hasOwnProperty(e) && (this.methodMap[e] = [], delete this.methodMap[e]), this.callBackName === e && (this.callBackTemp = null, this.callBackName = null))
					}
				}, {
					key: "updateCamreaInfo",
					value: function(e) {
						if (e.info) {
							var t = e.info;
							(t.location || t.rotation) && this._refreshCamera(t.location, t.rotation, t.distance)
						}
					}
				}, {
					key: "_refreshCamera",
					value: function(e, t, n) {
						var r = this.owner;
						e && (r.camera.location = e), t && (r.camera.rotation = t), (0, o.isNumber)(n) && (r.camera.distance = n), r.options.onCameraChange && r.options.onCameraChange(r.camera)
					}
				}, {
					key: "destroy",
					value: function() {
						this.methodMap = {}, u.
					default.removeListener(this.owner), this.owner = null
					}
				}]), e
			}();
		t.
	default = l, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r, a = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ?
		function(e) {
			return typeof e
		} : function(e) {
			return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
		}, o = function() {
			function e(e, t) {
				for (var n = 0; n < t.length; n++) {
					var r = t[n];
					r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
				}
			}
			return function(t, n, r) {
				return n && e(t.prototype, n), r && e(t, r), t
			}
		}(), i = n(1), u = (r = i) && r.__esModule ? r : {
		default:
			r
		}, l = n(0);

		function s(e, t) {
			if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
		}
		function c(e, t) {
			if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
			return !t || "object" != typeof t && "function" != typeof t ? e : t
		}
		var f = function(e) {
				function t() {
					var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : null,
						n = arguments[1];
					s(this, t);
					var r = c(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this, e, n));
					return r.map = e, r.location = {}, r.rotation = {}, r.distance = 0, r.release = [
						["reset", "resetCamera"], "focusPoint", "flyTo", "setView", "rotate", "rotateCenter", "cancelFlight", "focusOn", "space", "moveFollow", "moveFollowState"], r.releaseGIS = ["flyToGIS", "setViewGIS", "focusPointGIS", "focusOnGIS"], r
				}
				return function(e, t) {
					if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
					e.prototype = Object.create(t && t.prototype, {
						constructor: {
							value: e,
							enumerable: !1,
							writable: !0,
							configurable: !0
						}
					}), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
				}(t, e), o(t, [{
					key: "getCameraInfo",
					value: function() {
						this.sendMessage2("camera", "getCameraInfo", "")
					}
				}, {
					key: "flyTo",
					value: function(e, t, n) {
						var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : null,
							a = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : null,
							o = arguments.length > 5 && void 0 !== arguments[5] ? arguments[5] : null,
							i = arguments.length > 6 && void 0 !== arguments[6] ? arguments[6] : null,
							u = arguments.length > 7 && void 0 !== arguments[7] ? arguments[7] : null,
							s = arguments.length > 8 && void 0 !== arguments[8] ? arguments[8] : 2;
						this.send({
							namespace: "camera",
							type: "FlyTo",
							x: (0, l.filterNull)(e, this.location.x),
							y: (0, l.filterNull)(t, this.location.y),
							z: (0, l.filterNull)(n, this.location.z),
							roll: (0, l.filterNull)(r, this.rotation.roll),
							pitch: (0, l.filterNull)(a, this.rotation.pitch),
							yaw: (0, l.filterNull)(o, this.rotation.yaw),
							distance: (0, l.filterNull)(i, this.distance),
							time: s
						}, u)
					}
				}, {
					key: "flyToGIS",
					value: function(e, t, n) {
						var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : null,
							a = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : null,
							o = arguments.length > 5 && void 0 !== arguments[5] ? arguments[5] : null,
							i = arguments.length > 6 && void 0 !== arguments[6] ? arguments[6] : null,
							u = arguments.length > 7 && void 0 !== arguments[7] ? arguments[7] : null,
							l = arguments.length > 8 && void 0 !== arguments[8] ? arguments[8] : 2,
							s = this.transVectorNum(e, t, n);
						this.flyTo(s.x, s.y, s.z, r, a, o, i, u, l)
					}
				}, {
					key: "setView",
					value: function(e, t, n) {
						var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : null,
							o = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : null,
							i = arguments.length > 5 && void 0 !== arguments[5] ? arguments[5] : null,
							u = arguments.length > 6 && void 0 !== arguments[6] ? arguments[6] : null,
							s = arguments.length > 7 && void 0 !== arguments[7] && arguments[7];
						(0, l.isNull)(e) || ("number" == typeof e ? this._setView({
							x: e,
							y: t,
							z: n
						}, {
							roll: r,
							pitch: o,
							yaw: i
						}, u) : "object" === (void 0 === t ? "undefined" : a(t)) && "object" === (void 0 === e ? "undefined" : a(e)) ? this._setView(e, t, n) : (e.hasOwnProperty("location") || e.hasOwnProperty("destination")) && this._setView(e.location || e.destination, e.rotation || e.orientation, e.distance, s))
					}
				}, {
					key: "_setView",
					value: function(e, t) {
						var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : null,
							r = arguments.length > 3 && void 0 !== arguments[3] && arguments[3];
						r && (e = this.transVectorNew(e)), this.sendMessage("camera", "setView", {
							location: (0, l.joinNullObject)(e, this.location),
							rotation: (0, l.joinNullObject)(t, this.rotation),
							distance: n || this.distance
						})
					}
				}, {
					key: "setViewGIS",
					value: function(e, t, n) {
						var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : null,
							a = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : null,
							o = arguments.length > 5 && void 0 !== arguments[5] ? arguments[5] : null,
							i = arguments.length > 6 && void 0 !== arguments[6] ? arguments[6] : null;
						this.setView(e, t, n, r, a, o, i, !0)
					}
				}, {
					key: "rotate",
					value: function(e, t) {
						var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : null;
						this.send({
							namespace: "camera",
							type: "rotate",
							param: {
								time: e,
								degrees: t
							}
						}, n)
					}
				}, {
					key: "rotateCenter",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 2,
							n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : null;
						this.send({
							namespace: "camera",
							type: "rotate",
							param: {
								time: t,
								degrees: e
							}
						}, n)
					}
				}, {
					key: "cancelFlight",
					value: function() {
						this.send({
							namespace: "camera",
							type: "cancelFlight",
							param: ""
						})
					}
				}, {
					key: "focusPoint",
					value: function(e, t, n) {
						var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : null,
							a = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : null,
							o = arguments.length > 5 && void 0 !== arguments[5] ? arguments[5] : null,
							i = arguments.length > 6 && void 0 !== arguments[6] ? arguments[6] : null,
							u = arguments.length > 7 && void 0 !== arguments[7] ? arguments[7] : null,
							s = arguments.length > 8 && void 0 !== arguments[8] ? arguments[8] : 2;
						this.sendMessage("camera", "focusOn", {
							location: {
								x: (0, l.filterNull)(e, this.location.x),
								y: (0, l.filterNull)(t, this.location.y),
								z: (0, l.filterNull)(n, this.location.z)
							},
							rotation: {
								roll: (0, l.filterNull)(r, this.rotation.roll),
								pitch: (0, l.filterNull)(a, this.rotation.pitch),
								yaw: (0, l.filterNull)(o, this.rotation.yaw)
							},
							distance: (0, l.isNumber)(i) ? i : this.distance,
							time: s
						}, u)
					}
				}, {
					key: "focusPointGIS",
					value: function(e, t, n) {
						var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : null,
							a = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : null,
							o = arguments.length > 5 && void 0 !== arguments[5] ? arguments[5] : null,
							i = arguments.length > 6 && void 0 !== arguments[6] ? arguments[6] : null,
							u = arguments.length > 7 && void 0 !== arguments[7] ? arguments[7] : null,
							l = arguments.length > 8 && void 0 !== arguments[8] ? arguments[8] : 2,
							s = this.transVectorNum(e, t, n);
						this.focusPoint(s.x, s.y, s.z, r, a, o, i, u, l)
					}
				}, {
					key: "focusOn",
					value: function(e, t, n) {
						var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : null,
							a = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : 1,
							o = (0, l.joinNullObject)(e, this.location),
							i = (0, l.joinNullObject)(t, this.rotation);
						this.send({
							namespace: "camera",
							type: "focusOn",
							param: {
								location: o,
								rotation: i,
								distance: (0, l.isNumber)(n) ? n : this.distance,
								time: a
							}
						}, r)
					}
				}, {
					key: "focusOnGIS",
					value: function(e, t, n) {
						var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : "",
							a = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : 1;
						e = this.transVectorNew(e), this.focusOn(e, t, n, r, a)
					}
				}, {
					key: "space",
					value: function(e) {
						e && this.sendMessage("camera", "space", {
							distanceLimit: e.distanceLimit || "",
							pitchLimit: e.pitchLimit || "",
							rollLimit: e.rollLimit || "",
							leftTop: e.leftTop || "",
							rightBottom: e.rightBottom || ""
						})
					}
				}, {
					key: "moveFollow",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null,
							n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : null;
						if (e) {
							var r = {
								coveringId: e.id,
								coveringType: "type",
								speed: e.speed || 100,
								loop: e.loop || !0,
								reverse: e.reverse || !1,
								height: (0, l.isNumber)(e.height) ? e.height : this.distance,
								pitch: (0, l.isNumber)(e.pitch) ? e.pitch : 30
							},
								a = [];
							t && a.push({
								name: "onMoveStart",
								func: t
							}), n && a.push({
								name: "onMoveEnd",
								func: n
							}), this.sendMessage("camera", "moveFollow", r, a)
						}
					}
				}, {
					key: "moveFollowState",
					value: function(e) {
						this.sendMessage("camera", "moveFollowState", {
							state: e
						})
					}
				}, {
					key: "reset",
					value: function() {
						this.sendMessage("camera", "reset")
					}
				}]), t
			}(u.
		default);
		t.
	default = f, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r, a = function() {
				function e(e, t) {
					for (var n = 0; n < t.length; n++) {
						var r = t[n];
						r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
					}
				}
				return function(t, n, r) {
					return n && e(t.prototype, n), r && e(t, r), t
				}
			}(),
			o = n(1);

		function i(e, t) {
			if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
		}
		function u(e, t) {
			if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
			return !t || "object" != typeof t && "function" != typeof t ? e : t
		}
		var l = function(e) {
				function t(e) {
					i(this, t);
					var n = u(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this, e, null));
					return n.callBackPick = null, n.callBackPickID = null, n.release = ["pickPosition", "pickObject", "pickComponent", "endPick"], n
				}
				return function(e, t) {
					if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
					e.prototype = Object.create(t && t.prototype, {
						constructor: {
							value: e,
							enumerable: !1,
							writable: !0,
							configurable: !0
						}
					}), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
				}(t, e), a(t, [{
					key: "pickPosition",
					value: function(e) {
						this.removeCallBack("PickPosition"), this.callBackPick = e, this.send({
							namespace: "measure",
							type: "PickPosition",
							value: !0
						}, e)
					}
				}, {
					key: "pickObject",
					value: function(e) {
						this.removeCallBack("PickObject"), this.callBackPick = e, this.send({
							namespace: "measure",
							type: "PickObject",
							param: !0
						}, e)
					}
				}, {
					key: "pickComponent",
					value: function(e) {
						this.removeCallBack("PickComponent"), this.callBackPickID = e, this.send({
							namespace: "measure",
							type: "PickComponent",
							param: !0
						}, e)
					}
				}, {
					key: "endPick",
					value: function() {
						this.sendMessage("measure", "RightMouseClose", !0)
					}
				}, {
					key: "destroy",
					value: function() {
						(function e(t, n, r) {
							null === t && (t = Function.prototype);
							var a = Object.getOwnPropertyDescriptor(t, n);
							if (void 0 === a) {
								var o = Object.getPrototypeOf(t);
								return null === o ? void 0 : e(o, n, r)
							}
							if ("value" in a) return a.value;
							var i = a.get;
							return void 0 !== i ? i.call(r) : void 0
						})(t.prototype.__proto__ || Object.getPrototypeOf(t.prototype), "destroy", this).call(this), this.callBackPick = null, this.callBackPickID = null
					}
				}]), t
			}(((r = o) && r.__esModule ? r : {
			default:
				r
			}).
		default);
		t.
	default = l, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ?
		function(e) {
			return typeof e
		} : function(e) {
			return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
		}, a = function() {
			function e(e, t) {
				for (var n = 0; n < t.length; n++) {
					var r = t[n];
					r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
				}
			}
			return function(t, n, r) {
				return n && e(t.prototype, n), r && e(t, r), t
			}
		}(), o = d(n(1)), i = d(n(6)), u = n(0), l = n(7), s = d(n(10)), c = d(n(23)), f = d(n(11));

		function d(e) {
			return e && e.__esModule ? e : {
			default:
				e
			}
		}
		function h(e) {
			if (Array.isArray(e)) {
				for (var t = 0, n = Array(e.length); t < e.length; t++) n[t] = e[t];
				return n
			}
			return Array.from(e)
		}
		function y(e, t) {
			if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
		}
		function p(e, t) {
			if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
			return !t || "object" != typeof t && "function" != typeof t ? e : t
		}
		var v = function(e) {
				function t(e) {
					y(this, t);
					var n = p(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this, e, null, "ObjectFactory"));
					return n.clusterObject = null, n.release = ["createAreaBoundary", "createEffectPoint", "createCluster", "removeCluster", "createBillBoardCollection", "createBillboard", "createLabel", "createHeatmap", "createGrid", "createCircleArea", "removeBillboard", "removeLabel", "createPolyline", "createMigrationMap", "createFeatureLayer", "createAreaData", "createTrafficCondition", "createStrategy", "createVisualField", "createHighlightArea", "buildingSlice", "buildingLight"], n.releaseGIS = ["createMigrationMapGIS", "createEffectPointGIS", "createBillboardGIS", "createLabelGIS", "createHeatmapGIS", "createPolylineGIS", "createCircleAreaGIS", "createAreaBoundaryGIS", "createAreaDataGIS", "createTrafficConditionGIS", "createStrategyGIS", "createVisualFieldGIS", "createHighlightAreaGIS"], n
				}
				return function(e, t) {
					if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
					e.prototype = Object.create(t && t.prototype, {
						constructor: {
							value: e,
							enumerable: !1,
							writable: !0,
							configurable: !0
						}
					}), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
				}(t, e), a(t, [{
					key: "BillboardCollection",
					value: function() {
						var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : null;
						return this.createBillBoardCollection(e)
					}
				}, {
					key: "createBillBoardCollection",
					value: function() {
						var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : null,
							t = new c.
						default (this.owner, this.owner.points);
						return e && t.setDataSource(e), t
					}
				}, {
					key: "createBillboard",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1];
						if (e) {
							var n = i.
						default.assignObject(e);
							return n.id || (n.id = i.
						default.createOID("createBillboard")), n.category = "billboard", n = (0, u.filterUex)(n), (n = this.transPosition(n, null, t)).hasOwnProperty("visibility") || (n.visibility = !0), n.hasOwnProperty("scale") || (n.scale = 1), n.alertWindow && n.alertWindow.size && (n.alertWindow.size.x > this.owner.config.resolution.width && (n.alertWindow.size.x = this.owner.config.resolution.width), n.alertWindow.size.y > this.owner.config.resolution.height && (n.alertWindow.size.y = this.owner.config.resolution.height)), this.sendMessage("ObjectFactory", "CreateBillboard", n), this.createMapObject(n, "ObjectFactory", "RemoveBillboard", "ShowBillboard", "HideBillboard")
						}
					}
				}, {
					key: "createBillboardGIS",
					value: function(e) {
						return this.createBillboard(e, !0)
					}
				}, {
					key: "removeBillboard",
					value: function(e) {
						if ("object" === (void 0 === e ? "undefined" : r(e))) {
							if (!e.id) return void i.
						default.tranceError('method:removeBillboard need "id"');
							e = e.id
						}
						this.sendMessage("ObjectFactory", "RemoveBillboard", e)
					}
				}, {
					key: "createLabel",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1];
						if (e) return e.id || (e.id = i.
					default.createOID("createLabel")), e.category = "label", e.backgroundColor = (0, l.getUe4Color)(e.backgroundColor, "rgba(255,255,255,1)"), e.fillColor = (0, l.getUe4Color)(e.fillColor, "rgba(0,0,0,1)"), e.distanceDisplayCondition || (e.distanceDisplayCondition = new s.
					default), e.hasOwnProperty("visibility") || (e.visibility = !0), e.type || (e.type = "Type1"), e.scale || (e.scale = 1), e.hasOwnProperty("location") && (e.x = e.location.x, e.y = e.location.y, e.z = e.location.z, delete e.location), e = (0, u.filterUex)(e), (e = this.transPosition(e, null, t)).size || (e.size = {
							x: 480,
							y: 180
						}), e.size.hasOwnProperty("width") && (e.size = {
							x: e.size.width,
							y: e.size.height
						}), this.sendMessage("ObjectFactory", "CreateLabel", e), this.createMapObject(e, "ObjectFactory", "RemoveLabel", "ShowLabel", "HideLabel")
					}
				}, {
					key: "createLabelGIS",
					value: function(e) {
						return this.createLabel(e, !0)
					}
				}, {
					key: "removeLabel",
					value: function(e) {
						if ("object" === (void 0 === e ? "undefined" : r(e))) {
							if (!e.id) return void i.
						default.tranceError('method:removeLabel need "id"');
							e = e.id
						}
						this.sendMessage("ObjectFactory", "RemoveLabel", e)
					}
				}, {
					key: "createHeatmap",
					value: function(e) {
						var t = this,
							n = arguments.length > 1 && void 0 !== arguments[1] && arguments[1];
						if (e) {
							var r = i.
						default.assignObject(e);
							r.id || (r.id = i.
						default.createOID("createHeatmap")), r.data = r.data || [], n = (0, u.isTrans)(e, n), this.owner.ue4Version >= 2 ? (r.Location = [], r.Value = [], r.Radius = [], r.data.forEach((function(e) {
								if (e.location) {
									var a = n ? t.transVector(e.location) : e.location;
									r.Location.push(a), r.Value.push(e.value || 0), r.Radius.push(e.radius || 0)
								}
							})), delete r.data):
							(n && (r.data = this.transArrayNum(r.data)), r.class || (r.class = "normal"), r.bbox || (r.bbox = this.owner.config.bounds), (0, u.isNumber)(r.height) || (r.height = 100)), r.type || (r.type = 0), this.sendMessage("ObjectFactory", "CreateHeatmap", r);
							var a = this.createMapObject(r, "ObjectFactory", "RemoveHeatmap", "ShowHeatmap", "HideHeatmap");
							return a.update = function(e) {
								t.sendMessage("ObjectFactory", "update", {
									data: e
								})
							}, a
						}
					}
				}, {
					key: "createHeatmapGIS",
					value: function(e) {
						return this.createHeatmap(e, !0)
					}
				}, {
					key: "createGrid",
					value: function(e) {
						return e ? (e.id || (e.id = i.
					default.createOID("createGrid")), e.data || (e.data = []), e.bbox || (e.bbox = this.owner.config.bounds), this.sendMessage("ObjectFactory", "CreateGrid", e), this.createMapObject(e, "ObjectFactory", "RemoveGrid", "ShowGrid", "HideGrid")) : null
					}
				}, {
					key: "createPolyline",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1];
						if (e) {
							var n = i.
						default.assignObject(e);
							return n.id || (n.id = i.
						default.createOID("createPolyline")), n.pathColor = (0, l.getUe4Color)(n.pathColor, "#00FF00"), n.category = "polyline", n.brightness = n.brightness || 10, n.type = n.type || 0, (0, u.isTrans)(e, t) && (n.data = this.transArrayNumNew(n.data)), this.sendMessage("ObjectFactory", "AddPath", n), this.createMapObject(n, "ObjectFactory", "RemovePath", "ShowPath", "HidePath")
						}
					}
				}, {
					key: "createPolylineGIS",
					value: function(e) {
						return this.createPolyline(e, !0)
					}
				}, {
					key: "createMigrationMap",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1];
						if (e) return e.brightness = e.brightness || 10, e.heightScale = e.heightScale || .26, e.id = e.id || i.
					default.createOID(), e.lineColor = (0, l.getUe4Color)(e.lineColor), e.type = e.type || 0, (0, u.isTrans)(e, t) && (e.startLocation = e.startLocation ? this.transVectorNew(e.startLocation) : "", e.endLocation = e.endLocation ? this.transVectorNew(e.endLocation) : ""), this.sendMessage("ObjectFactory", "AddMigrationMap", e), this.createMapObject(e, "ObjectFactory", "RemoveMigrationMap", "ShowMigration", "HideMigration")
					}
				}, {
					key: "createMigrationMapGIS",
					value: function(e) {
						return this.createMigrationMap(e, !0)
					}
				}, {
					key: "createCluster",
					value: function(e) {
						this.clusterObject && this.clusterObject.removeFromMap(), this.clusterObject = this.createFeatureLayer(e)
					}
				}, {
					key: "removeCluster",
					value: function() {
						this.clusterObject && this.clusterObject.removeFromMap()
					}
				}, {
					key: "createFeatureLayer",
					value: function(e) {
						return (e = e || {}).id = e.id || i.
					default.createOID("createFeatureLayer"), e.exclude || (e.exclude = []), this.sendMessage("ObjectFactory", "CreateCluster", e), this.createMapObject(e, "ObjectFactory", "RemoveCluster")
					}
				}, {
					key: "createAreaData",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1];
						return e ? (Array.isArray(e) && (e = {
							id: i.
						default.createOID("createAreaData"),
							data:
							[].concat(h(e))
						}), e.id || (e.id = i.
					default.createOID("createAreaData")), e.color && (e.color = (0, l.getUe4Color)(e.color)), (0, u.isTrans)(e, t) && (e.data = this.transArrayNum(e.data)), this.sendMessage("ObjectFactory", "CreateAreaData", e), this.createMapObject(e, "ObjectFactory", "RemoveAreaData", "ShowAreaData", "HideAreaData")) : null
					}
				}, {
					key: "createAreaDataGIS",
					value: function(e) {
						return this.createAreaData(e, !0)
					}
				}, {
					key: "createCircleArea",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1];
						if (e) {
							var n = i.
						default.assignObject(e);
							return n.id || (n.id = i.
						default.createOID("createAreaData")), n.radius = n.radius || 1e5, n.type = n.type || 0, n.color = n.color || "", n.color && (n.color = (0, l.getUe4Color)(n.color)), (0, u.isTrans)(e, t) && (n.location = this.transVector(n.location)), this.sendMessage("ObjectFactory", "CreateCircleArea", n), this.createMapObject(n, "ObjectFactory", "RemoveCircleArea")
						}
					}
				}, {
					key: "createCircleAreaGIS",
					value: function(e) {
						this.createCircleArea(e, !0)
					}
				}, {
					key: "createEffectPoint",
					value: function(e) {
						var t = this,
							n = arguments.length > 1 && void 0 !== arguments[1] && arguments[1];
						if (!e) return null;
						var r = i.
					default.assignObject(e);
						r.hasOwnProperty("x") && r.hasOwnProperty("y") && r.hasOwnProperty("z") && (r.location = new f.
					default (r.x, r.y, r.z), delete r.x, delete r.y, delete r.z), r.id = r.id || i.
					default.createOID(), r.color && (r.color = (0, l.getUe4Color)(r.color)), (0, u.isTrans)(e, n) && (r.location = this.transVector(r.location));
						var a = i.
					default.objectXZ(r);
						return a.removeFromMap = function() {
							t.sendMessage("ObjectFactory", "RemoveEffectPoint", r.id)
						}, this.sendMessage("ObjectFactory", "CreateEffectPoint", r), a
					}
				}, {
					key: "createEffectPointGIS",
					value: function(e) {
						return this.createEffectPoint(e, !0)
					}
				}, {
					key: "createAreaBoundary",
					value: function(e) {
						var t = this,
							n = arguments.length > 1 && void 0 !== arguments[1] && arguments[1];
						if (e && e.data) {
							var r = i.
						default.assignObject(e);
							r.id = r.id || i.
						default.createOID(), r.color && (r.color = (0, l.getUe4Color)(r.color)), (0, u.isTrans)(e, n) && (r.data = this.transArrayNum(r.data));
							var a = i.
						default.objectXZ(r);
							return a.removeFromMap = function() {
								t.sendMessage("ObjectFactory", "RemoveAreaBoundary", r.id)
							}, this.sendMessage("ObjectFactory", "CreateAreaBoundary", r), a
						}
					}
				}, {
					key: "createAreaBoundaryGIS",
					value: function(e) {
						return this.createAreaBoundary(e, !0)
					}
				}, {
					key: "createTrafficCondition",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1];
						if (e && e.data) {
							var n = (0, l.getSubArr)(e.data, ["location", "level"]);
							(0, u.isTrans)(e, t) && (n.location = this.transArrayNum(n.location));
							var r = {
								id: i.
							default.createOID("TM"),
								LevelNum:
								(0, u.getInteger)(e.levelNum, 5),
								Location: n.location,
								ConditionLevel: n.level,
								Size: (0, u.getInteger)(e.size, 5e4),
								Color: (0, l.transformUe4Colors)(e.color || ["#0dba87", "#78f5b9", "#6af649", "#ffff00", "#ff0000"]),
								Brightness: (0, u.getNumber)(e.brightness, 10)
							};
							return this.sendData("CreateTrafficCondition", r), this.createThisMapObject2(r, "TrafficCondition")
						}
					}
				}, {
					key: "createTrafficConditionGIS",
					value: function(e) {
						return this.createTrafficCondition(e, !0)
					}
				}, {
					key: "createStrategy",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1],
							n = e.startLocation,
							r = e.endLocation;
						(0, u.isTrans)(e, t) && (n = this.transVectorNew(n), r = this.transVectorNew(r));
						var a = {
							id: i.
						default.createOID("TM"),
							StartLocation:
							n,
							EndLocation: r,
							ArcScale: (0, u.limitNum)((0, u.getNumber)(e.arcScale, .3), -1, 1),
							Type: (0, u.getRangeIn)((0, u.getNumber)(e.type, 0), "0,1", 0),
							Color: e.color ? (0, l.getUe4Color)(e.color) : "",
							Brightness: (0, u.getNumber)(e.brightness, 10),
							Opacity: (0, u.limitNum)((0, u.getNumber)(e.opacity, 1), 0, 1)
						};
						return this.sendData("CreateStrategy", a), this.createThisMapObject2(a, "Strategy")
					}
				}, {
					key: "createStrategyGIS",
					value: function(e) {
						return this.createStrategy(e, !0)
					}
				}, {
					key: "createVisualField",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1],
							n = e.location;
						(0, u.isTrans)(e, t) && (n = this.transVectorNew(n));
						var r = {
							id: i.
						default.createOID("TM"),
							Location:
							n,
							Direction: (0, u.limitNum)((0, u.getNumber)(e.direction), -180, 180),
							Pitch: (0, u.limitNum)((0, u.getNumber)(e.pitch), -90, 90),
							FOV: (0, u.limitNum)((0, u.getNumber)(e.fov), 0, 180),
							Distance: (0, u.getNumber)(e.distance),
							Opacity: (0, u.limitNum)((0, u.getNumber)(e.opacity, 1), 0, 1)
						};
						return this.sendData("CreateVisualField", r), this.createThisMapObject2(r, "Strategy")
					}
				}, {
					key: "createVisualFieldGIS",
					value: function(e) {
						return this.createVisualField(e, !0)
					}
				}, {
					key: "createHighlightArea",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1],
							n = e.points;
						(0, u.isTrans)(e, t) && (n = this.transArrayNumNew(n));
						var r = {
							id: i.
						default.createOID("TM"),
							PointLocation:
							n
						};
						return this.sendData("CreateHighlightArea", r), this.createThisMapObject2(r, "VisualField")
					}
				}, {
					key: "createHighlightAreaGIS",
					value: function(e) {
						return this.createHighlightArea(e, !0)
					}
				}, {
					key: "buildingSlice",
					value: function(e) {
						this.sendData("callEvent", {
							eventName: "BuildingSlice",
							FloorID: e.buildId,
							Direction: (0, u.getBoolean)(e.visible, !0),
							FloatHeight: (0, u.getNumber)(e.floatHeight, 2e3)
						})
					}
				}, {
					key: "buildingLight",
					value: function(e) {
						this.sendData("callEvent", {
							eventName: "SceneControl",
							ID: e.buildId,
							Specific: (0, u.getBoolean)(e.visible, !0)
						})
					}
				}, {
					key: "callBackObjectFactory",
					value: function() {}
				}]), t
			}(o.
		default);
		t.
	default = v, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r, a = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ?
		function(e) {
			return typeof e
		} : function(e) {
			return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
		}, o = function() {
			function e(e, t) {
				for (var n = 0; n < t.length; n++) {
					var r = t[n];
					r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
				}
			}
			return function(t, n, r) {
				return n && e(t.prototype, n), r && e(t, r), t
			}
		}(), i = n(1), u = (r = i) && r.__esModule ? r : {
		default:
			r
		}, l = n(0);

		function s(e, t) {
			if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
		}
		function c(e, t) {
			if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
			return !t || "object" != typeof t && "function" != typeof t ? e : t
		}
		var f = function(e) {
				function t() {
					var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : null,
						n = arguments[1];
					s(this, t);
					var r = c(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this, e, n));
					return r.map = e, r.points = [], r.release = ["createBillBoardCollection"], r
				}
				return function(e, t) {
					if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
					e.prototype = Object.create(t && t.prototype, {
						constructor: {
							value: e,
							enumerable: !1,
							writable: !0,
							configurable: !0
						}
					}), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
				}(t, e), o(t, [{
					key: "getIds",
					value: function() {
						return this.points ? this.points.map((function(e) {
							return e.id
						})) : []
					}
				}, {
					key: "add",
					value: function(e) {
						var t = this.owner.createBillboard(e);
						return this.points.push(t), t
					}
				}, {
					key: "setDataSource",
					value: function(e) {
						var t = this;
						if (this.removeAll(), this.points = [].concat(function(e) {
							if (Array.isArray(e)) {
								for (var t = 0, n = Array(e.length); t < e.length; t++) n[t] = e[t];
								return n
							}
							return Array.from(e)
						}(e)), e && 0 !== e.length) return this.points = e.map((function(e) {
							return t.owner.createBillboard(e)
						})), this.points
					}
				}, {
					key: "remove",
					value: function(e) {
						if (!e || "object" === (void 0 === e ? "undefined" : a(e)) && !e.hasOwnProperty("id")) return null;
						var t = "string" == typeof e ? e : e.id,
							n = (0, l.getSelectItemIndex)(this.points, t, "id");
						if (-1 === n) return null;
						var r = this.points[n];
						return r.removeFromMap(), this.points.splice(n, 1), r
					}
				}, {
					key: "removeAll",
					value: function() {
						var e = this.getIds();
						0 !== e.length && this.sendMessage("BillboardCollection", "removeAllBillboard", e)
					}
				}, {
					key: "show",
					value: function(e) {
						var t = this.getIds();
						0 !== t.length && (e ? this.sendMessage("BillboardCollection", "ShowBillboardCollection", t) : this.sendMessage("BillboardCollection", "HideBillboardCollection", t))
					}
				}]), t
			}(u.
		default);
		t.
	default = f, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r, a = function() {
				function e(e, t) {
					for (var n = 0; n < t.length; n++) {
						var r = t[n];
						r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
					}
				}
				return function(t, n, r) {
					return n && e(t.prototype, n), r && e(t, r), t
				}
			}(),
			o = n(1);
		var i = function(e) {
				function t(e) {
					!
					function(e, t) {
						if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
					}(this, t);
					var n = function(e, t) {
							if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
							return !t || "object" != typeof t && "function" != typeof t ? e : t
						}(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this, e));
					return n.release = ["select", "disSelect"], n
				}
				return function(e, t) {
					if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
					e.prototype = Object.create(t && t.prototype, {
						constructor: {
							value: e,
							enumerable: !1,
							writable: !0,
							configurable: !0
						}
					}), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
				}(t, e), a(t, [{
					key: "select",
					value: function(e) {
						this.removeCallBack("select"), this.send({
							namespace: "SelectTool",
							type: "select",
							param: !0
						}, e)
					}
				}, {
					key: "disSelect",
					value: function() {
						this.removeCallBack("select"), this.sendMessage("SelectTool", "select", !1)
					}
				}]), t
			}(((r = o) && r.__esModule ? r : {
			default:
				r
			}).
		default);
		t.
	default = i, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r = function() {
				function e(e, t) {
					for (var n = 0; n < t.length; n++) {
						var r = t[n];
						r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
					}
				}
				return function(t, n, r) {
					return n && e(t.prototype, n), r && e(t, r), t
				}
			}(),
			a = l(n(1)),
			o = l(n(6)),
			i = n(0),
			u = n(7);

		function l(e) {
			return e && e.__esModule ? e : {
			default:
				e
			}
		}
		var s = function(e) {
				function t(e) {
					!
					function(e, t) {
						if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
					}(this, t);
					var n = function(e, t) {
							if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
							return !t || "object" != typeof t && "function" != typeof t ? e : t
						}(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this, e));
					return n.release = ["createStatisticCylinder", "shotImage"], n.releaseGIS = ["createStatisticCylinderGIS"], n
				}
				return function(e, t) {
					if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
					e.prototype = Object.create(t && t.prototype, {
						constructor: {
							value: e,
							enumerable: !1,
							writable: !0,
							configurable: !0
						}
					}), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
				}(t, e), r(t, [{
					key: "createStatisticCylinder",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] && arguments[1];
						if (!e) return (0, i.thorwError)("createStatisticCylinder 参数错误！"), null;
						t = (0, i.isTrans)(e, t);
						var n = e;
						this.owner.ue4Version >= 2 ? n = {
							location: e.location,
							Type: e.type,
							RadiusSize: e.radius || 1e3,
							UintHeight: e.uintHeight || 1e3,
							WarningValue: e.warnValue || 0,
							Value: e.value || 0,
							Brightness: e.Brightness || 10,
							ColorSafe: (0, u.getUe4Color)(e.color || "#ffffff"),
							ColorWarning: (0, u.getUe4Color)(e.warnColor || "#ff0000")
						} : (n.divideValue || n.divideColor) && (n.divideValue || (n.divideValue = i.divideDefaultValue), n.divideColor ? n.divideColor = (0, u.transformUe4Colors)(n.divideColor) : n.divideColor = (0, i.getDefDivideColors)(n.divideValue)), n.id = n.id || o.
					default.createUUid("col"), t && (n.location = this.transArrayNum(n.location));
						var r = this.createMapObject(n, "View", "Remove3DBar", "Show3DBar", "Hide3DBar");
						return this.sendMessage("View", "Create3DBar", n), r
					}
				}, {
					key: "createStatisticCylinderGIS",
					value: function(e) {
						return this.createStatisticCylinder(e, !0)
					}
				}, {
					key: "shotImage",
					value: function(e) {
						this.sendMessage("View", "shotImage", null, null, null, e)
					}
				}]), t
			}(a.
		default);
		t.
	default = s, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r, a = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ?
		function(e) {
			return typeof e
		} : function(e) {
			return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
		}, o = function() {
			function e(e, t) {
				for (var n = 0; n < t.length; n++) {
					var r = t[n];
					r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
				}
			}
			return function(t, n, r) {
				return n && e(t.prototype, n), r && e(t, r), t
			}
		}(), i = n(1), u = (r = i) && r.__esModule ? r : {
		default:
			r
		}, l = n(0);

		function s(e, t) {
			if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
		}
		function c(e, t) {
			if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
			return !t || "object" != typeof t && "function" != typeof t ? e : t
		}
		var f = function(e) {
				function t(e) {
					var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null;
					s(this, t);
					var r = c(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this, e, n, "environment"));
					return r.release = ["setWeather", "resetWeather", "showEffect", "disableEffect", "setTime", "resetTime"], r
				}
				return function(e, t) {
					if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
					e.prototype = Object.create(t && t.prototype, {
						constructor: {
							value: e,
							enumerable: !1,
							writable: !0,
							configurable: !0
						}
					}), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
				}(t, e), o(t, [{
					key: "setTime",
					value: function(e) {
						"number" == typeof(e = e || "noon") ? this.sendMessage("environment", "SetTimeValue", {
							time: e,
							smoothOver: !0
						}) : this.sendMessage("environment", "setTime", e)
					}
				}, {
					key: "resetTime",
					value: function() {
						this.sendMessage("environment", "TimeInit", "")
					}
				}, {
					key: "setWeather",
					value: function(e) {
						e || (e = "sun");
						var t = {
							weather: e,
							smoothOver: !0
						};
						"object" === (void 0 === e ? "undefined" : a(e)) ? Object.assign(t, e) : t.weather = (0, l.getWeatherNum)(t.weather), this.sendMessage("environment", "setWeather", t)
					}
				}, {
					key: "resetWeather",
					value: function() {
						this.sendMessage("environment", "WeatherInit", "")
					}
				}, {
					key: "showEffect",
					value: function(e) {
						"morning" === e || "noon" === e || "evening" === e || "night" === e ? this.sendMessage2("environment", "SetTime", {
							time: e,
							smoothOver: !0
						}) : "rain" === e || "snow" === e || "cloud" === e || "sun" === e ? this.sendMessage2("environment", "SetWeather", {
							weather: (0, l.getWeatherNum)(e),
							smoothOver: !0
						}) : this.send({
							namespace: "environment",
							type: "ShowEffect",
							effectName: e,
							param: !0
						})
					}
				}, {
					key: "disableEffect",
					value: function(e) {
						"night" === e || "morning" === e || "evening" === e ? this.showEffect("noon") : "rain" === e || "snow" === e || "cloud" === e || "sun" === e ? this.showEffect("sun") : this.send({
							namespace: "environment",
							type: "ShowEffect",
							effectName: e,
							param: !1
						})
					}
				}]), t
			}(u.
		default);
		t.
	default = f, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r = function() {
				function e(e, t) {
					for (var n = 0; n < t.length; n++) {
						var r = t[n];
						r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
					}
				}
				return function(t, n, r) {
					return n && e(t.prototype, n), r && e(t, r), t
				}
			}(),
			a = i(n(1)),
			o = i(n(6));

		function i(e) {
			return e && e.__esModule ? e : {
			default:
				e
			}
		}
		var u = function(e) {
				function t(e) {
					!
					function(e, t) {
						if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
					}(this, t);
					var n = function(e, t) {
							if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
							return !t || "object" != typeof t && "function" != typeof t ? e : t
						}(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this, e));
					return n.release = ["getDistanceHorizontal", "getPlaneArea", "getMeasureHeight"], n
				}
				return function(e, t) {
					if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
					e.prototype = Object.create(t && t.prototype, {
						constructor: {
							value: e,
							enumerable: !1,
							writable: !0,
							configurable: !0
						}
					}), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
				}(t, e), r(t, [{
					key: "getDistanceHorizontal",
					value: function(e) {
						var t = {
							id: o.
						default.createUUid()
						};
						return this.send({
							namespace: "analysis",
							type: "AddMeasure",
							param: t.id
						}, e), this.createMapObject(t, "analysis", "RemoveMeasure", null, null, "RemoveMeasure")
					}
				}, {
					key: "getPlaneArea",
					value: function(e) {
						var t = {
							id: o.
						default.createUUid()
						};
						return this.send({
							namespace: "analysis",
							type: "AddPlaneArea",
							param: t.id
						}, e), this.createMapObject(t, "analysis", "RemovePlaneArea", null, null, "RemovePlaneArea")
					}
				}, {
					key: "getMeasureHeight",
					value: function(e) {
						var t = {
							id: o.
						default.createUUid()
						};
						return this.send({
							namespace: "analysis",
							type: "AddMeasureHeight",
							param: t.id
						}, e), this.createMapObject(t, "analysis", "RemoveMeasureHeight", null, null, "RemoveMeasureHeight")
					}
				}]), t
			}(a.
		default);
		t.
	default = u, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r = c(n(3)),
			a = c(n(5)),
			o = c(n(4)),
			i = c(n(14)),
			u = c(n(2)),
			l = c(n(9)),
			s = c(n(13));

		function c(e) {
			return e && e.__esModule ? e : {
			default:
				e
			}
		}
		var f = {},
			d = {
				up: {
					south: "east",
					north: "west",
					west: "south",
					east: "north"
				},
				down: {
					south: "west",
					north: "east",
					west: "north",
					east: "south"
				},
				south: {
					up: "west",
					down: "east",
					west: "down",
					east: "up"
				},
				north: {
					up: "east",
					down: "west",
					west: "up",
					east: "down"
				},
				west: {
					up: "north",
					down: "south",
					north: "down",
					south: "up"
				},
				east: {
					up: "south",
					down: "north",
					north: "up",
					south: "down"
				}
			},
			h = {
				north: [-1, 0, 0],
				east: [0, 1, 0],
				up: [0, 0, 1],
				south: [1, 0, 0],
				west: [0, -1, 0],
				down: [0, 0, -1]
			},
			y = {},
			p = {
				east: new r.
			default,
				north:
				new r.
			default,
				up:
				new r.
			default,
				west:
				new r.
			default,
				south:
				new r.
			default,
				down:
				new r.
			default
			},
			v = new r.
		default,
			m = new r.
		default,
			g = new r.
		default;
		f.localFrameToFixedFrameGenerator = function(e, t) {
			if (!d.hasOwnProperty(e) || !d[e].hasOwnProperty(t)) throw new l.
		default ("firstAxis and secondAxis must be east, north, up, west, south or down.");
			var n, c = d[e][t],
				f = e + t;
			return (0, u.
		default)(y[f]) ? n = y[f]:
			(n = function(n, f, d) {
				if (!(0, u.
			default)(n)) throw new l.
			default ("origin is required.");
				if ((0, u.
			default)(d) || (d = new s.
			default), r.
			default.equalsEpsilon(n, r.
			default.ZERO, a.
			default.EPSILON14)) r.
			default.unpack(h[e], 0, v), r.
			default.unpack(h[t], 0, m), r.
			default.unpack(h[c], 0, g);
				else if (a.
			default.equalsEpsilon(n.x, 0, a.
			default.EPSILON14) && a.
			default.equalsEpsilon(n.y, 0, a.
			default.EPSILON14)) {
					var y = a.
				default.sign(n.z);
					r.
				default.unpack(h[e], 0, v), "east" !== e && "west" !== e && r.
				default.multiplyByScalar(v, y, v), r.
				default.unpack(h[t], 0, m), "east" !== t && "west" !== t && r.
				default.multiplyByScalar(m, y, m), r.
				default.unpack(h[c], 0, g), "east" !== c && "west" !== c && r.
				default.multiplyByScalar(g, y, g)
				} else {
					(f = (0, o.
				default)(f, i.
				default.WGS84)).geodeticSurfaceNormal(n, p.up);
					var b = p.up,
						w = p.east;
					w.x = -n.y, w.y = n.x, w.z = 0, r.
				default.normalize(w, p.east), r.
				default.cross(b, w, p.north), r.
				default.multiplyByScalar(p.up, -1, p.down), r.
				default.multiplyByScalar(p.east, -1, p.west), r.
				default.multiplyByScalar(p.north, -1, p.south), v = p[e], m = p[t], g = p[c]
				}
				return d[0] = v.x, d[1] = v.y, d[2] = v.z, d[3] = 0, d[4] = m.x, d[5] = m.y, d[6] = m.z, d[7] = 0, d[8] = g.x, d[9] = g.y, d[10] = g.z, d[11] = 0, d[12] = n.x, d[13] = n.y, d[14] = n.z, d[15] = 1, d
			}, y[f] = n), n
		}, f.eastSouthUpToFixedFrame = f.localFrameToFixedFrameGenerator("east", "south"), t.
	default = f, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r = s(n(3)),
			a = s(n(8)),
			o = s(n(4)),
			i = s(n(2)),
			u = s(n(5)),
			l = s(n(15));

		function s(e) {
			return e && e.__esModule ? e : {
			default:
				e
			}
		}
		function c(e, t, n) {
			this.longitude = (0, o.
		default)(e, 0), this.latitude = (0, o.
		default)(t, 0), this.height = (0, o.
		default)(n, 0)
		}
		c.fromRadians = function(e, t, n, r) {
			return a.
		default.typeOf.number("longitude", e), a.
		default.typeOf.number("latitude", t), n = (0, o.
		default)(n, 0), (0, i.
		default)(r) ? (r.longitude = e, r.latitude = t, r.height = n, r):
			new c(e, t, n)
		}, c.fromDegrees = function(e, t, n, r) {
			return a.
		default.typeOf.number("longitude", e), a.
		default.typeOf.number("latitude", t), e = u.
		default.toRadians(e), t = u.
		default.toRadians(t), c.fromRadians(e, t, n, r)
		};
		var f = new r.
	default,
			d = new r.
		default,
			h = new r.
		default,
			y = new r.
		default (1 / 6378137, 1 / 6378137, 1 / 6356752.314245179),
			p = new r.
		default (1 / 40680631590769, 1 / 40680631590769, 1 / 40408299984661.445),
			v = u.
		default.EPSILON1;
		c.fromCartesian = function(e, t, n) {
			var a = (0, i.
		default)(t) ? t.oneOverRadii : y,
				o = (0, i.
			default)(t) ? t.oneOverRadiiSquared : p,
				s = (0, i.
			default)(t) ? t._centerToleranceSquared : v,
				m = (0, l.
			default)(e, a, o, s, d);
			if ((0, i.
		default)(m)) {
				var g = r.
			default.multiplyComponents(m, o, f);
				g = r.
			default.normalize(g, g);
				var b = r.
			default.subtract(e, m, h),
					w = Math.atan2(g.y, g.x),
					O = Math.asin(g.z),
					_ = u.
				default.sign(r.
				default.dot(b, e)) * r.
				default.magnitude(b);
				return (0, i.
			default)(n) ? (n.longitude = w, n.latitude = O, n.height = _, n):
				new c(w, O, _)
			}
		}, c.toCartesian = function(e, t, n) {
			return a.
		default.defined("cartographic", e), r.
		default.fromRadians(e.longitude, e.latitude, e.height, t, n)
		}, c.clone = function(e, t) {
			if ((0, i.
		default)(e)) return (0, i.
		default)(t) ? (t.longitude = e.longitude, t.latitude = e.latitude, t.height = e.height, t) : new c(e.longitude, e.latitude, e.height)
		}, c.equals = function(e, t) {
			return e === t || (0, i.
		default)(e) && (0, i.
		default)(t) && e.longitude === t.longitude && e.latitude === t.latitude && e.height === t.height
		}, c.equalsEpsilon = function(e, t, n) {
			return a.
		default.typeOf.number("epsilon", n), e === t || (0, i.
		default)(e) && (0, i.
		default)(t) && Math.abs(e.longitude - t.longitude) <= n && Math.abs(e.latitude - t.latitude) <= n && Math.abs(e.height - t.height) <= n
		}, c.ZERO = Object.freeze(new c(0, 0, 0)), c.prototype.clone = function(e) {
			return c.clone(this, e)
		}, c.prototype.equals = function(e) {
			return c.equals(this, e)
		}, c.prototype.equalsEpsilon = function(e, t) {
			return c.equalsEpsilon(this, e, t)
		}, c.prototype.toString = function() {
			return "(" + this.longitude + ", " + this.latitude + ", " + this.height + ")"
		}, t.
	default = c, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r = function() {
				function e(e, t) {
					for (var n = 0; n < t.length; n++) {
						var r = t[n];
						r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
					}
				}
				return function(t, n, r) {
					return n && e(t.prototype, n), r && e(t, r), t
				}
			}(),
			a = u(n(1)),
			o = u(n(17)),
			i = u(n(6));

		function u(e) {
			return e && e.__esModule ? e : {
			default:
				e
			}
		}
		var l = function(e) {
				function t(e, n) {
					!
					function(e, t) {
						if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
					}(this, t);
					var r = function(e, t) {
							if (!e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
							return !t || "object" != typeof t && "function" != typeof t ? e : t
						}(this, (t.__proto__ || Object.getPrototypeOf(t)).call(this, e, n, "factory"));
					return r.release = ["callEvent", "clearAllCovering", "setRes", "setResolution", "flyToCity", "reStartWorld", "createPatrolLine", "createGroupBar", "setAudioFile", "setAudioSwitch", "setAudioVolume", "doubleRendering"], r.releaseGIS = ["createGroupBarGIS", "createPatrolLineGIS"], r
				}
				return function(e, t) {
					if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
					e.prototype = Object.create(t && t.prototype, {
						constructor: {
							value: e,
							enumerable: !1,
							writable: !0,
							configurable: !0
						}
					}), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
				}(t, e), r(t, [{
					key: "callEvent",
					value: function(e) {
						var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "";
						this.sendMessage2("factory", "callEvent", {
							eventName: e,
							param: t || ""
						})
					}
				}, {
					key: "clearAllCovering",
					value: function() {
						this.callEvent("ClearCovering")
					}
				}, {
					key: "setResolution",
					value: function(e, t) {
						this.setRes(e, t)
					}
				}, {
					key: "setRes",
					value: function(e, t) {
						this.sendMessage2("factory", "setResolution", {
							Width: parseInt(e),
							Height: parseInt(t)
						})
					}
				}, {
					key: "flyToCity",
					value: function() {
						this.sendMessage("factory", "FlyToCity", {
							rotation: new o.
						default (0, -25, 155)
						})
					}
				}, {
					key: "reStartWorld",
					value: function() {
						this.sendMessage("factory", "ReStartWorld", this.owner.id)
					}
				}, {
					key: "createPatrolLine",
					value: function(e) {
						var t = this,
							n = arguments.length > 1 && void 0 !== arguments[1] && arguments[1];
						if (!e) return null;
						var r = i.
					default.assignObject(e);
						r.id = r.id || i.
					default.createOID(""), r.points = this.transPositionArr(r, "points", n);
						var a = i.
					default.objectXZ(r);
						return a.removeFromMap = function() {
							t.sendMessage("factory", "RemovePatrol", r.id)
						}, a.beginPatrol = function(e) {
							t.sendMessage("factory", "BeginPatrol", {
								id: r.id,
								obj: e.id,
								category: e.category
							})
						}, a.stopPatrol = function(e) {
							t.sendMessage("factory", "StopPatrol", {
								id: r.id,
								obj: e.id,
								category: e.category
							})
						}, this.sendMessage("factory", "CreatePatrolLine", r), a
					}
				}, {
					key: "createPatrolLineGIS",
					value: function(e) {
						return this.createPatrolLine(e, !0)
					}
				}, {
					key: "createGroupBar",
					value: function(e) {
						var t = this,
							n = arguments.length > 1 && void 0 !== arguments[1] && arguments[1];
						if (!e) return null;
						var r = i.
					default.assignObject(e);
						r.id = r.id || i.
					default.createOID(), r.location = this.transPosition(r, "location", n);
						var a = i.
					default.objectXZ(r);
						return a.removeFromMap = function() {
							t.sendMessage("factory", "RemoveGroupBar", r.id)
						}, this.sendMessage("factory", "CreateGroupBar", r), a
					}
				}, {
					key: "createGroupBarGIS",
					value: function(e) {
						return this.createGroupBar(e, !0)
					}
				}, {
					key: "setAudioFile",
					value: function(e) {
						this.sendMessage("factory", "SetAudioFile", {
							soundFileName: e
						})
					}
				}, {
					key: "setAudioSwitch",
					value: function(e) {
						this.sendMessage("factory", "SetAudioSwitch", {
							soundSwitch: e
						})
					}
				}, {
					key: "setAudioVolume",
					value: function(e) {
						this.sendMessage("factory", "setAudioVolume", {
							soundVolume: e
						})
					}
				}, {
					key: "doubleRendering",
					value: function(e) {
						this.sendMessage("factory", "DoubleRendering", e)
					}
				}]), t
			}(a.
		default);
		t.
	default = l, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r = function() {
				function e(e, t) {
					for (var n = 0; n < t.length; n++) {
						var r = t[n];
						r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, r.key, r)
					}
				}
				return function(t, n, r) {
					return n && e(t.prototype, n), r && e(t, r), t
				}
			}();
		n(0);
		var a = function() {
				function e() {
					!
					function(e, t) {
						if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
					}(this, e), this.catchMessage = [], this.catchFuncArr = [], this.catchFuncMap = {}, this.init()
				}
				return r(e, [{
					key: "init",
					value: function() {
						var e = this;
						window.addEventListener("message", (function(t) {
							e.messageHandler(t)
						}))
					}
				}, {
					key: "postSend",
					value: function(e, t) {
						if (e) {
							var n = e._getIframeWindow();
							if (!n) return null;
							t = this.transData(e, t), e.serverVersion < 2 && t && "Init" === t.type || n.contentWindow && n.contentWindow.postMessage(t, "*")
						}
					}
				}, {
					key: "messageHandler",
					value: function(e) {
						var t = this.getMessageMap(e);
						if (t) {
							var n = e.data,
								r = null;
							n.data && n.data.serviceVersion ? r = n.data.data : n.serviceVersion ? (r = n.data, n = {
								callBack: n.ResType,
								data: r
							}) : "Currency" === n.ResType ? r = n : n.data = null, t.message._messageHandler(n, r)
						}
					}
				}, {
					key: "getMessageMap",
					value: function(e) {
						var t = !0,
							n = !1,
							r = void 0;
						try {
							for (var a, o = this.catchMessage[Symbol.iterator](); !(t = (a = o.next()).done); t = !0) {
								var i = a.value,
									u = i._getIframeWindow();
								if (u && e.source === u.contentWindow) return i
							}
						} catch (e) {
							n = !0, r = e
						} finally {
							try {
								!t && o.
								return &&o.
								return ()
							} finally {
								if (n) throw r
							}
						}
						return null
					}
				}, {
					key: "transData",
					value: function(e, t) {
						return t && e && t.hasOwnProperty("type"), t
					}
				}], [{
					key: "initListener",
					value: function(t) {
						e.getInstance().catchMessage.push(t)
					}
				}, {
					key: "removeListener",
					value: function(t) {
						t.startMessage(!1);
						var n = e.getInstance().catchMessage,
							r = n.indexOf(t);
						r > -1 && n.splice(r, 1)
					}
				}, {
					key: "postMessage",
					value: function(t, n) {
						e.getInstance().postSend(t, n)
					}
				}, {
					key: "getInstance",
					value: function() {
						return e._instance || (e._instance = new e), e._instance
					}
				}]), e
			}();
		t.
	default = a, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		});
		var r = n(7);

		function a(e, t) {
			if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
		}
		t.
	default = function e() {
			var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 1,
				n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 1,
				o = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 1,
				i = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : 1;
			if (a(this, e), this.r = t, this.g = n, this.b = o, this.a = i, "string" == typeof t) {
				var u = (0, r.getUe4Color)(t);
				Object.assign(this, u)
			}
		}, e.exports = t.
	default
	}, function(e, t, n) {
		"use strict";
		Object.defineProperty(t, "__esModule", {
			value: !0
		}), t.TUTransForm = t.TUColor = t.TURotator = t.TUVector2 = t.TUVector3 = t.TUBounds = t.TUMap = void 0;
		var r = c(n(18)),
			a = c(n(16)),
			o = c(n(32)),
			i = c(n(17)),
			u = c(n(10)),
			l = c(n(11)),
			s = c(n(12));

		function c(e) {
			return e && e.__esModule ? e : {
			default:
				e
			}
		}
		t.TUMap = r.
	default, t.TUBounds = a.
	default, t.TUVector3 = l.
	default, t.TUVector2 = u.
	default, t.TURotator = i.
	default, t.TUColor = o.
	default, t.TUTransForm = s.
	default
	}])
}));